Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Tonvia
TDengine
提交
56d0d69a
T
TDengine
项目概览
Tonvia
/
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,发现更多精彩内容 >>
提交
56d0d69a
编写于
8月 13, 2021
作者:
H
Hongze Cheng
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
[TD-5538]<hotfix>: add --force-keep-file option
上级
d80b9a17
变更
5
显示空白变更内容
内联
并排
Showing
5 changed file
with
47 addition
and
0 deletion
+47
-0
src/common/src/tglobal.c
src/common/src/tglobal.c
+3
-0
src/dnode/src/dnodeSystem.c
src/dnode/src/dnodeSystem.c
+2
-0
src/tsdb/inc/tsdbFS.h
src/tsdb/inc/tsdbFS.h
+3
-0
src/tsdb/src/tsdbFS.c
src/tsdb/src/tsdbFS.c
+38
-0
src/util/inc/tconfig.h
src/util/inc/tconfig.h
+1
-0
未找到文件。
src/common/src/tglobal.c
浏览文件 @
56d0d69a
...
...
@@ -26,6 +26,9 @@
#include "tlocale.h"
#include "ttimezone.h"
// TSDB
bool
tsdbForceKeepFile
=
false
;
// cluster
char
tsFirst
[
TSDB_EP_LEN
]
=
{
0
};
char
tsSecond
[
TSDB_EP_LEN
]
=
{
0
};
...
...
src/dnode/src/dnodeSystem.c
浏览文件 @
56d0d69a
...
...
@@ -42,6 +42,8 @@ int32_t main(int32_t argc, char *argv[]) {
}
}
else
if
(
strcmp
(
argv
[
i
],
"-C"
)
==
0
)
{
dump_config
=
1
;
}
else
if
(
strcmp
(
argv
[
i
],
"--force-keep-file"
)
==
0
)
{
tsdbForceKeepFile
=
true
;
}
else
if
(
strcmp
(
argv
[
i
],
"-V"
)
==
0
)
{
#ifdef _ACCT
char
*
versionStr
=
"enterprise"
;
...
...
src/tsdb/inc/tsdbFS.h
浏览文件 @
56d0d69a
...
...
@@ -18,6 +18,9 @@
#define TSDB_FS_VERSION 0
// ================== TSDB global config
extern
bool
tsdbForceKeepFile
;
// ================== CURRENT file header info
typedef
struct
{
uint32_t
version
;
// Current file system version (relating to code)
...
...
src/tsdb/src/tsdbFS.c
浏览文件 @
56d0d69a
...
...
@@ -982,6 +982,26 @@ static int tsdbRestoreMeta(STsdbRepo *pRepo) {
return
-
1
;
}
if
(
tsdbForceKeepFile
)
{
struct
stat
tfstat
;
// Get real file size
if
(
fstat
(
pfs
->
cstatus
->
pmf
->
fd
,
&
tfstat
)
<
0
)
{
terrno
=
TAOS_SYSTEM_ERROR
(
errno
);
tsdbCloseMFile
(
pfs
->
cstatus
->
pmf
);
tfsClosedir
(
tdir
);
regfree
(
&
regex
);
return
-
1
;
}
if
(
pfs
->
cstatus
->
pmf
->
info
.
size
!=
tfstat
.
st_size
)
{
int64_t
tfsize
=
pfs
->
cstatus
->
pmf
->
info
.
size
;
pfs
->
cstatus
->
pmf
->
info
.
size
=
tfstat
.
st_size
;
tsdbInfo
(
"vgId:%d file %s header size is changed from %"
PRId64
" to %"
PRId64
,
REPO_ID
(
pRepo
),
TSDB_FILE_FULL_NAME
(
pfs
->
cstatus
->
pmf
),
tfsize
,
pfs
->
cstatus
->
pmf
->
info
.
size
);
}
}
tsdbCloseMFile
(
pfs
->
cstatus
->
pmf
);
}
}
else
if
(
code
==
REG_NOMATCH
)
{
...
...
@@ -1141,6 +1161,24 @@ static int tsdbRestoreDFileSet(STsdbRepo *pRepo) {
return
-
1
;
}
if
(
tsdbForceKeepFile
)
{
struct
stat
tfstat
;
// Get real file size
if
(
fstat
(
pDFile
->
fd
,
&
tfstat
)
<
0
)
{
terrno
=
TAOS_SYSTEM_ERROR
(
errno
);
taosArrayDestroy
(
fArray
);
return
-
1
;
}
if
(
pDFile
->
info
.
size
!=
tfstat
.
st_size
)
{
int64_t
tfsize
=
pDFile
->
info
.
size
;
pDFile
->
info
.
size
=
tfstat
.
st_size
;
tsdbInfo
(
"vgId:%d file %s header size is changed from %"
PRId64
" to %"
PRId64
,
REPO_ID
(
pRepo
),
TSDB_FILE_FULL_NAME
(
pDFile
),
tfsize
,
pDFile
->
info
.
size
);
}
}
tsdbCloseDFile
(
pDFile
);
index
++
;
}
...
...
src/util/inc/tconfig.h
浏览文件 @
56d0d69a
...
...
@@ -77,6 +77,7 @@ typedef struct {
extern
SGlobalCfg
tsGlobalConfig
[];
extern
int32_t
tsGlobalConfigNum
;
extern
char
*
tsCfgStatusStr
[];
extern
bool
tsdbForceKeepFile
;
void
taosReadGlobalLogCfg
();
bool
taosReadGlobalCfg
();
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录