提交 f1ce0225 编写于 作者: H Hongze Cheng

TD-353

上级 b51aceef
...@@ -337,7 +337,7 @@ char *tsdbGetMetaFileName(char *rootDir) { ...@@ -337,7 +337,7 @@ char *tsdbGetMetaFileName(char *rootDir) {
} }
void tsdbGetDataFileName(STsdbRepo *pRepo, int fid, int type, char *fname) { void tsdbGetDataFileName(STsdbRepo *pRepo, int fid, int type, char *fname) {
snprintf(fname, TSDB_FILENAME_LEN, "%s/%s/v%df%d.%s", pRepo->rootDir, TSDB_DATA_DIR_NAME, REPO_ID(pRepo), fid, tsdbFileSuffix[type]); snprintf(fname, TSDB_FILENAME_LEN, "%s/%s/v%df%d%s", pRepo->rootDir, TSDB_DATA_DIR_NAME, REPO_ID(pRepo), fid, tsdbFileSuffix[type]);
} }
int tsdbLockRepo(STsdbRepo *pRepo) { int tsdbLockRepo(STsdbRepo *pRepo) {
......
...@@ -148,21 +148,25 @@ _err: ...@@ -148,21 +148,25 @@ _err:
int tsdbCloseHelperFile(SRWHelper *pHelper, bool hasError) { int tsdbCloseHelperFile(SRWHelper *pHelper, bool hasError) {
if (pHelper->files.headF.fd > 0) { if (pHelper->files.headF.fd > 0) {
fsync(pHelper->files.headF.fd);
close(pHelper->files.headF.fd); close(pHelper->files.headF.fd);
pHelper->files.headF.fd = -1; pHelper->files.headF.fd = -1;
} }
if (pHelper->files.dataF.fd > 0) { if (pHelper->files.dataF.fd > 0) {
if (!hasError) tsdbUpdateFileHeader(&(pHelper->files.dataF), 0); if ((helperType(pHelper) == TSDB_WRITE_HELPER)) {
tsdbUpdateFileHeader(&(pHelper->files.dataF), 0);
fsync(pHelper->files.dataF.fd); fsync(pHelper->files.dataF.fd);
}
close(pHelper->files.dataF.fd); close(pHelper->files.dataF.fd);
pHelper->files.dataF.fd = -1; pHelper->files.dataF.fd = -1;
} }
if (pHelper->files.lastF.fd > 0) { if (pHelper->files.lastF.fd > 0) {
if ((helperType(pHelper) == TSDB_WRITE_HELPER)) {
fsync(pHelper->files.lastF.fd); fsync(pHelper->files.lastF.fd);
close(pHelper->files.lastF.fd); close(pHelper->files.lastF.fd);
}
pHelper->files.lastF.fd = -1; pHelper->files.lastF.fd = -1;
} }
if (helperType(pHelper) == TSDB_WRITE_HELPER) {
if (pHelper->files.nHeadF.fd > 0) { if (pHelper->files.nHeadF.fd > 0) {
if (!hasError) tsdbUpdateFileHeader(&(pHelper->files.nHeadF), 0); if (!hasError) tsdbUpdateFileHeader(&(pHelper->files.nHeadF), 0);
fsync(pHelper->files.nHeadF.fd); fsync(pHelper->files.nHeadF.fd);
...@@ -188,6 +192,7 @@ int tsdbCloseHelperFile(SRWHelper *pHelper, bool hasError) { ...@@ -188,6 +192,7 @@ int tsdbCloseHelperFile(SRWHelper *pHelper, bool hasError) {
pHelper->files.lastF.info = pHelper->files.nLastF.info; pHelper->files.lastF.info = pHelper->files.nLastF.info;
} }
} }
}
return 0; return 0;
} }
......
...@@ -578,6 +578,5 @@ static int tdRestoreKVStore(SKVStore *pStore) { ...@@ -578,6 +578,5 @@ static int tdRestoreKVStore(SKVStore *pStore) {
_err: _err:
taosHashDestroyIter(pIter); taosHashDestroyIter(pIter);
tfree(buf); tfree(buf);
taosHashDestroyIter(pIter);
return -1; return -1;
} }
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册