Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
哥们要飞
TDengine
提交
3e31cdbe
T
TDengine
项目概览
哥们要飞
/
TDengine
与 Fork 源项目一致
Fork自
taosdata / TDengine
通知
1
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
TDengine
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
3e31cdbe
编写于
1月 29, 2021
作者:
H
Hongze Cheng
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
refact
上级
a76580bc
变更
3
显示空白变更内容
内联
并排
Showing
3 changed file
with
20 addition
and
20 deletion
+20
-20
src/tsdb/inc/tsdbFS.h
src/tsdb/inc/tsdbFS.h
+1
-0
src/tsdb/src/tsdbFS.c
src/tsdb/src/tsdbFS.c
+18
-20
src/tsdb/src/tsdbFile.c
src/tsdb/src/tsdbFile.c
+1
-0
未找到文件。
src/tsdb/inc/tsdbFS.h
浏览文件 @
3e31cdbe
...
...
@@ -51,6 +51,7 @@ typedef struct {
#define FS_CURRENT_STATUS(pfs) ((pfs)->cstatus)
#define FS_NEW_STATUS(pfs) ((pfs)->nstatus)
#define FS_IN_TXN(pfs) (pfs)->intxn
#define FS_VERSION(pfs) ((pfs)->cstatus->meta.version)
#define FS_TXN_VERSION(pfs) ((pfs)->nstatus->meta.version)
typedef
struct
{
...
...
src/tsdb/src/tsdbFS.c
浏览文件 @
3e31cdbe
...
...
@@ -159,27 +159,24 @@ static void tsdbResetFSStatus(SFSStatus *pStatus) {
}
static
void
tsdbSetStatusMFile
(
SFSStatus
*
pStatus
,
const
SMFile
*
pMFile
)
{
ASSERT
(
pStatus
->
pmf
==
NULL
&&
TSDB_FILE_CLOSED
(
pMFile
)
);
ASSERT
(
pStatus
->
pmf
==
NULL
);
pStatus
->
pmf
=
&
(
pStatus
->
mf
);
*
(
pStatus
->
pmf
)
=
*
pMFile
;
tsdbInitMFileEx
(
pStatus
->
pmf
,
pMFile
)
;
}
static
int
tsdbAddDFileSetToStatus
(
SFSStatus
*
pStatus
,
const
SDFileSet
*
pSet
)
{
ASSERT
(
TSDB_FILE_CLOSED
(
&
(
pSet
->
files
[
0
])));
ASSERT
(
TSDB_FILE_CLOSED
(
&
(
pSet
->
files
[
1
])));
ASSERT
(
TSDB_FILE_CLOSED
(
&
(
pSet
->
files
[
2
])));
if
(
taosArrayPush
(
pStatus
->
df
,
(
void
*
)
pSet
)
==
NULL
)
{
terrno
=
TSDB_CODE_TDB_OUT_OF_MEMORY
;
return
-
1
;
}
TSDB_FSET_SET_CLOSED
(((
SDFileSet
*
)
taosArrayGetLast
(
pStatus
->
df
)));
return
0
;
}
// ================== STsdbFS
// TODO
STsdbFS
*
tsdbNewFS
(
STsdbCfg
*
pCfg
)
{
int
keep
=
pCfg
->
keep
;
int
days
=
pCfg
->
daysPerFile
;
...
...
@@ -221,7 +218,6 @@ STsdbFS *tsdbNewFS(STsdbCfg *pCfg) {
return
pfs
;
}
// TODO
void
*
tsdbFreeFS
(
STsdbFS
*
pfs
)
{
if
(
pfs
)
{
pfs
->
nstatus
=
tsdbFreeFSStatus
(
pfs
->
nstatus
);
...
...
@@ -235,7 +231,7 @@ void *tsdbFreeFS(STsdbFS *pfs) {
}
int
tsdbOpenFS
(
STsdbRepo
*
pRepo
)
{
STsdbFS
*
pfs
=
REPO_FS
(
pRepo
);
STsdbFS
*
pfs
=
REPO_FS
(
pRepo
);
char
current
[
TSDB_FILENAME_LEN
]
=
"
\0
"
;
ASSERT
(
pfs
!=
NULL
);
...
...
@@ -254,6 +250,11 @@ int tsdbOpenFS(STsdbRepo *pRepo) {
}
}
if
(
tsdbScanAndTryFixFS
(
pRepo
)
<
0
)
{
tsdbError
(
"vgId:%d failed to scan and fix FS since %s"
,
REPO_ID
(
pRepo
),
tstrerror
(
terrno
));
return
-
1
;
}
// Load meta cache if has meta file
if
((
!
(
pRepo
->
state
&
TSDB_STATE_BAD_META
))
&&
tsdbLoadMetaCache
(
pRepo
,
true
)
<
0
)
{
tsdbError
(
"vgId:%d failed to open FS while loading meta cache since %s"
,
REPO_ID
(
pRepo
),
tstrerror
(
terrno
));
...
...
@@ -264,7 +265,7 @@ int tsdbOpenFS(STsdbRepo *pRepo) {
}
void
tsdbCloseFS
(
STsdbRepo
*
pRepo
)
{
//
TODO
//
Do nothing
}
// Start a new transaction to modify the file system
...
...
@@ -651,10 +652,6 @@ static int tsdbOpenFSFromCurrent(STsdbRepo *pRepo) {
taosTZfree
(
buffer
);
close
(
fd
);
if
(
tsdbScanAndTryFixFS
(
pRepo
)
<
0
)
{
return
-
1
;
}
return
0
;
_err:
...
...
@@ -965,6 +962,7 @@ static int tsdbRestoreMeta(STsdbRepo *pRepo) {
if
(
tsdbLoadMFileHeader
(
pfs
->
cstatus
->
pmf
,
&
(
pfs
->
cstatus
->
pmf
->
info
))
<
0
)
{
tsdbError
(
"vgId:%d failed to restore meta since %s"
,
REPO_ID
(
pRepo
),
tstrerror
(
terrno
));
tsdbCloseMFile
(
pfs
->
cstatus
->
pmf
);
tfsClosedir
(
tdir
);
regfree
(
&
regex
);
return
-
1
;
...
...
src/tsdb/src/tsdbFile.c
浏览文件 @
3e31cdbe
...
...
@@ -581,6 +581,7 @@ void *tsdbDecodeDFileSet(void *buf, SDFileSet *pSet) {
int32_t
fid
;
buf
=
taosDecodeFixedI32
(
buf
,
&
(
fid
));
pSet
->
state
=
0
;
pSet
->
fid
=
fid
;
for
(
TSDB_FILE_T
ftype
=
0
;
ftype
<
TSDB_FILE_MAX
;
ftype
++
)
{
buf
=
tsdbDecodeSDFile
(
buf
,
TSDB_DFILE_IN_SET
(
pSet
,
ftype
));
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录