refact code
This commit is contained in:
parent
de8944b62c
commit
0e50a96668
|
@ -1782,77 +1782,56 @@ static int32_t tsdbCommitTableData(SCommitter *pCommitter, TABLEID id) {
|
||||||
|
|
||||||
if (pRowInfo == NULL) goto _exit;
|
if (pRowInfo == NULL) goto _exit;
|
||||||
|
|
||||||
|
SBlockData *pBData;
|
||||||
if (pCommitter->toLastOnly) {
|
if (pCommitter->toLastOnly) {
|
||||||
SBlockData *pBDatal = &pCommitter->dWriter.bDatal;
|
pBData = &pCommitter->dWriter.bDatal;
|
||||||
|
|
||||||
code = tsdbInitLastBlockIfNeed(pCommitter, id);
|
code = tsdbInitLastBlockIfNeed(pCommitter, id);
|
||||||
if (code) goto _err;
|
if (code) goto _err;
|
||||||
|
} else {
|
||||||
|
pBData = &pCommitter->dWriter.bData;
|
||||||
|
ASSERT(pBData->nRow == 0);
|
||||||
|
}
|
||||||
|
|
||||||
while (pRowInfo) {
|
while (pRowInfo) {
|
||||||
STSchema *pTSchema = NULL;
|
STSchema *pTSchema = NULL;
|
||||||
if (pRowInfo->row.type == 0) {
|
if (pRowInfo->row.type == 0) {
|
||||||
code = tsdbCommitterUpdateRowSchema(pCommitter, id.suid, id.uid, TSDBROW_SVERSION(&pRowInfo->row));
|
code = tsdbCommitterUpdateRowSchema(pCommitter, id.suid, id.uid, TSDBROW_SVERSION(&pRowInfo->row));
|
||||||
if (code) goto _err;
|
|
||||||
pTSchema = pCommitter->skmRow.pTSchema;
|
|
||||||
}
|
|
||||||
|
|
||||||
code = tBlockDataAppendRow(pBDatal, &pRowInfo->row, pTSchema, id.uid);
|
|
||||||
if (code) goto _err;
|
if (code) goto _err;
|
||||||
|
pTSchema = pCommitter->skmRow.pTSchema;
|
||||||
|
}
|
||||||
|
|
||||||
code = tsdbNextCommitRow(pCommitter);
|
code = tBlockDataAppendRow(pBData, &pRowInfo->row, pTSchema, id.uid);
|
||||||
if (code) goto _err;
|
if (code) goto _err;
|
||||||
|
|
||||||
pRowInfo = tsdbGetCommitRow(pCommitter);
|
code = tsdbNextCommitRow(pCommitter);
|
||||||
if (pRowInfo && (pRowInfo->suid != id.suid || pRowInfo->uid != id.uid)) {
|
if (code) goto _err;
|
||||||
pRowInfo = NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (pBDatal->nRow >= pCommitter->maxRow) {
|
pRowInfo = tsdbGetCommitRow(pCommitter);
|
||||||
|
if (pRowInfo && (pRowInfo->suid != id.suid || pRowInfo->uid != id.uid)) {
|
||||||
|
pRowInfo = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (pBData->nRow >= pCommitter->maxRow) {
|
||||||
|
if (pCommitter->toLastOnly) {
|
||||||
code = tsdbCommitLastBlock(pCommitter);
|
code = tsdbCommitLastBlock(pCommitter);
|
||||||
if (code) goto _err;
|
if (code) goto _err;
|
||||||
}
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
SBlockData *pBData = &pCommitter->dWriter.bData;
|
|
||||||
|
|
||||||
ASSERT(pBData->nRow == 0);
|
|
||||||
|
|
||||||
while (pRowInfo) {
|
|
||||||
STSchema *pTSchema = NULL;
|
|
||||||
if (pRowInfo->row.type == 0) {
|
|
||||||
code = tsdbCommitterUpdateRowSchema(pCommitter, id.suid, id.uid, TSDBROW_SVERSION(&pRowInfo->row));
|
|
||||||
if (code) goto _err;
|
|
||||||
pTSchema = pCommitter->skmRow.pTSchema;
|
|
||||||
}
|
|
||||||
|
|
||||||
code = tBlockDataAppendRow(pBData, &pRowInfo->row, pTSchema, id.uid);
|
|
||||||
if (code) goto _err;
|
|
||||||
|
|
||||||
code = tsdbNextCommitRow(pCommitter);
|
|
||||||
if (code) goto _err;
|
|
||||||
|
|
||||||
pRowInfo = tsdbGetCommitRow(pCommitter);
|
|
||||||
if (pRowInfo && (pRowInfo->suid != id.suid || pRowInfo->uid != id.uid)) {
|
|
||||||
pRowInfo = NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (pBData->nRow >= pCommitter->maxRow) {
|
|
||||||
code = tsdbCommitDataBlock(pCommitter);
|
|
||||||
if (code) goto _err;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (pBData->nRow) {
|
|
||||||
if (pBData->nRow > pCommitter->minRow) {
|
|
||||||
code = tsdbCommitDataBlock(pCommitter);
|
|
||||||
if (code) goto _err;
|
|
||||||
} else {
|
} else {
|
||||||
code = tsdbAppendLastBlock(pCommitter);
|
code = tsdbCommitDataBlock(pCommitter);
|
||||||
if (code) goto _err;
|
if (code) goto _err;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!pCommitter->toLastOnly && pBData->nRow) {
|
||||||
|
if (pBData->nRow > pCommitter->minRow) {
|
||||||
|
code = tsdbCommitDataBlock(pCommitter);
|
||||||
|
if (code) goto _err;
|
||||||
|
} else {
|
||||||
|
code = tsdbAppendLastBlock(pCommitter);
|
||||||
|
if (code) goto _err;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
_exit:
|
_exit:
|
||||||
return code;
|
return code;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue