more code
This commit is contained in:
parent
ac0bb0cf44
commit
d1289d4c21
|
@ -17,26 +17,74 @@
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
STsdb *pTsdb;
|
STsdb *pTsdb;
|
||||||
|
|
||||||
|
SArray *aFileOp; // SArray<struct SFileOp>
|
||||||
} SMerger;
|
} SMerger;
|
||||||
|
|
||||||
typedef struct {
|
static int32_t tsdbFileSystemShouldMerge(STsdb *pTsdb) {
|
||||||
STsdb *pTsdb;
|
ASSERTS(0, "TODO: not implemented yet");
|
||||||
} STsdbMergeInfo;
|
|
||||||
|
|
||||||
int32_t tsdbMergeBegin(STsdb *pTsdb) {
|
|
||||||
int32_t code = 0;
|
|
||||||
// TODO
|
// TODO
|
||||||
return code;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
int32_t tsdbMergeCommit(STsdb *pTsdb) {
|
static int32_t tsdbFileSetShouldMerge(struct SFileSet *pSet) {
|
||||||
int32_t code = 0;
|
ASSERTS(0, "TODO: not implemented yet");
|
||||||
// TODO
|
// TODO
|
||||||
return code;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
int32_t tsdbMergeAbort(STsdb *pTsdb) {
|
static int32_t tsdbFileSetMerge(struct SFileSet *pFileSet) {
|
||||||
int32_t code = 0;
|
ASSERTS(0, "TODO: not implemented yet");
|
||||||
// TODO
|
// TODO
|
||||||
return code;
|
return 0;
|
||||||
}
|
}
|
||||||
|
static int32_t tsdbOpenMerger(STsdb *pTsdb, SMerger *merger) {
|
||||||
|
ASSERTS(0, "TODO: not implemented yet");
|
||||||
|
// TODO
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
int32_t tsdbMerge(STsdb *pTsdb) {
|
||||||
|
int32_t code = 0;
|
||||||
|
int32_t lino;
|
||||||
|
|
||||||
|
if (!tsdbFileSystemShouldMerge(pTsdb)) {
|
||||||
|
goto _exit;
|
||||||
|
}
|
||||||
|
|
||||||
|
// do merge
|
||||||
|
SMerger merger = {0};
|
||||||
|
|
||||||
|
TSDB_CHECK_CODE( //
|
||||||
|
code = tsdbOpenMerger(pTsdb, &merger), //
|
||||||
|
lino, //
|
||||||
|
_exit);
|
||||||
|
|
||||||
|
for (int32_t i = 0; i < taosArrayGetSize(pTsdb->pFS->aFileSet); i++) {
|
||||||
|
struct SFileSet *pFileSet = taosArrayGet(pTsdb->pFS->aFileSet, i);
|
||||||
|
if (!tsdbFileSetShouldMerge(pFileSet)) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
TSDB_CHECK_CODE( //
|
||||||
|
code = tsdbFileSetMerge(pFileSet), //
|
||||||
|
lino, //
|
||||||
|
_exit);
|
||||||
|
}
|
||||||
|
|
||||||
|
TSDB_CHECK_CODE( //
|
||||||
|
code = tsdbFileSystemEditBegin(pTsdb->pFS, merger.aFileOp, TSDB_FS_EDIT_MERGE), //
|
||||||
|
lino, //
|
||||||
|
_exit);
|
||||||
|
|
||||||
|
TSDB_CHECK_CODE( //
|
||||||
|
code = tsdbFileSystemEditCommit(pTsdb->pFS, TSDB_FS_EDIT_MERGE), //
|
||||||
|
lino, //
|
||||||
|
_exit);
|
||||||
|
|
||||||
|
_exit:
|
||||||
|
if (code) {
|
||||||
|
} else {
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue