fix: possible write block when error occurs

This commit is contained in:
Hongze Cheng 2024-04-23 16:48:49 +08:00
parent 7eb5724b05
commit 328f95f7cb
2 changed files with 6 additions and 5 deletions

View File

@ -897,6 +897,7 @@ int32_t tsdbFSEditCommit(STFileSystem *fs) {
// commit // commit
code = commit_edit(fs); code = commit_edit(fs);
ASSERT(code == 0);
TSDB_CHECK_CODE(code, lino, _exit); TSDB_CHECK_CODE(code, lino, _exit);
// schedule merge // schedule merge
@ -973,11 +974,11 @@ int32_t tsdbFSEditCommit(STFileSystem *fs) {
_exit: _exit:
if (code) { if (code) {
TSDB_ERROR_LOG(TD_VID(fs->tsdb->pVnode), lino, code); tsdbError("vgId:%d %s failed at line %d since %s", TD_VID(fs->tsdb->pVnode), __func__, lino, tstrerror(code));
} else { } else {
tsdbDebug("vgId:%d %s done, etype:%d", TD_VID(fs->tsdb->pVnode), __func__, fs->etype); tsdbInfo("vgId:%d %s done, etype:%d", TD_VID(fs->tsdb->pVnode), __func__, fs->etype);
tsem_post(&fs->canEdit);
} }
tsem_post(&fs->canEdit);
return code; return code;
} }

View File

@ -580,9 +580,9 @@ int32_t tsdbMerge(void *arg) {
} }
*/ */
// do merge // do merge
tsdbDebug("vgId:%d merge begin, fid:%d", TD_VID(tsdb->pVnode), merger->fid); tsdbInfo("vgId:%d merge begin, fid:%d", TD_VID(tsdb->pVnode), merger->fid);
code = tsdbDoMerge(merger); code = tsdbDoMerge(merger);
tsdbDebug("vgId:%d merge done, fid:%d", TD_VID(tsdb->pVnode), mergeArg->fid); tsdbInfo("vgId:%d merge done, fid:%d", TD_VID(tsdb->pVnode), mergeArg->fid);
TSDB_CHECK_CODE(code, lino, _exit); TSDB_CHECK_CODE(code, lino, _exit);
_exit: _exit: