more code

This commit is contained in:
Hongze Cheng 2024-02-29 16:32:11 +08:00
parent f6fd32a0c2
commit b8754b4209
4 changed files with 34 additions and 33 deletions

View File

@ -166,20 +166,21 @@ int32_t tCmprBlockL(void const *lhs, void const *rhs);
#define tBlockDataLastKey(PBLOCKDATA) TSDBROW_KEY(&tBlockDataLastRow(PBLOCKDATA)) #define tBlockDataLastKey(PBLOCKDATA) TSDBROW_KEY(&tBlockDataLastRow(PBLOCKDATA))
#define tBlockDataGetColDataByIdx(PBLOCKDATA, IDX) (&(PBLOCKDATA)->aColData[IDX]) #define tBlockDataGetColDataByIdx(PBLOCKDATA, IDX) (&(PBLOCKDATA)->aColData[IDX])
int32_t tBlockDataCreate(SBlockData *pBlockData); int32_t tBlockDataCreate(SBlockData *pBlockData);
void tBlockDataDestroy(SBlockData *pBlockData); void tBlockDataDestroy(SBlockData *pBlockData);
int32_t tBlockDataInit(SBlockData *pBlockData, TABLEID *pId, STSchema *pTSchema, int16_t *aCid, int32_t nCid); int32_t tBlockDataInit(SBlockData *pBlockData, TABLEID *pId, STSchema *pTSchema, int16_t *aCid, int32_t nCid);
void tBlockDataReset(SBlockData *pBlockData); void tBlockDataReset(SBlockData *pBlockData);
int32_t tBlockDataAddColData(SBlockData *pBlockData, int16_t cid, int8_t type, int8_t cflag, SColData **ppColData); int32_t tBlockDataAppendRow(SBlockData *pBlockData, TSDBROW *pRow, STSchema *pTSchema, int64_t uid);
int32_t tBlockDataAppendRow(SBlockData *pBlockData, TSDBROW *pRow, STSchema *pTSchema, int64_t uid); int32_t tBlockDataUpdateRow(SBlockData *pBlockData, TSDBROW *pRow, STSchema *pTSchema);
int32_t tBlockDataUpdateRow(SBlockData *pBlockData, TSDBROW *pRow, STSchema *pTSchema); int32_t tBlockDataTryUpsertRow(SBlockData *pBlockData, TSDBROW *pRow, int64_t uid);
int32_t tBlockDataTryUpsertRow(SBlockData *pBlockData, TSDBROW *pRow, int64_t uid); int32_t tBlockDataUpsertRow(SBlockData *pBlockData, TSDBROW *pRow, STSchema *pTSchema, int64_t uid);
int32_t tBlockDataUpsertRow(SBlockData *pBlockData, TSDBROW *pRow, STSchema *pTSchema, int64_t uid); void tBlockDataClear(SBlockData *pBlockData);
void tBlockDataClear(SBlockData *pBlockData); int32_t tCmprBlockData(SBlockData *pBlockData, int8_t cmprAlg, uint8_t **ppOut, int32_t *szOut, uint8_t *aBuf[],
int32_t aBufN[]);
int32_t tDecmprBlockData(uint8_t *pIn, int32_t szIn, SBlockData *pBlockData, uint8_t *aBuf[]);
SColData *tBlockDataGetColData(SBlockData *pBlockData, int16_t cid); SColData *tBlockDataGetColData(SBlockData *pBlockData, int16_t cid);
int32_t tCmprBlockData(SBlockData *pBlockData, int8_t cmprAlg, uint8_t **ppOut, int32_t *szOut, uint8_t *aBuf[], int32_t tBlockDataAddColData(SBlockData *pBlockData, int16_t cid, int8_t type, int8_t cflag, SColData **ppColData);
int32_t aBufN[]);
int32_t tDecmprBlockData(uint8_t *pIn, int32_t szIn, SBlockData *pBlockData, uint8_t *aBuf[]);
// SDiskDataHdr // SDiskDataHdr
int32_t tPutDiskDataHdr(uint8_t *p, const SDiskDataHdr *pHdr); int32_t tPutDiskDataHdr(uint8_t *p, const SDiskDataHdr *pHdr);
int32_t tGetDiskDataHdr(uint8_t *p, void *ph); int32_t tGetDiskDataHdr(uint8_t *p, void *ph);
@ -560,7 +561,7 @@ struct SDiskDataHdr {
int32_t szBlkCol; int32_t szBlkCol;
int32_t nRow; int32_t nRow;
int8_t cmprAlg; int8_t cmprAlg;
int8_t numPrimaryKeyCols; int8_t numOfPKs;
}; };
struct SDelFile { struct SDelFile {

View File

@ -287,7 +287,7 @@ int32_t tsdbDataFileReadBlockDataByColumn(SDataFileReader *reader, const SBrinRe
bData->nRow = hdr.nRow; bData->nRow = hdr.nRow;
// decode key part // decode key part
for (int32_t i = 0; i < hdr.numPrimaryKeyCols; i++) { for (int32_t i = 0; i < hdr.numOfPKs; i++) {
n += tGetBlockCol(reader->config->bufArr[0] + n, &primaryKeyBlockCols[i]); n += tGetBlockCol(reader->config->bufArr[0] + n, &primaryKeyBlockCols[i]);
} }
@ -309,7 +309,7 @@ int32_t tsdbDataFileReadBlockDataByColumn(SDataFileReader *reader, const SBrinRe
n += hdr.szKey; n += hdr.szKey;
// primary key columns // primary key columns
for (int32_t i = 0; i < hdr.numPrimaryKeyCols; i++) { for (int32_t i = 0; i < hdr.numOfPKs; i++) {
SColData *pColData; SColData *pColData;
code = tBlockDataAddColData(bData, primaryKeyBlockCols[i].cid, primaryKeyBlockCols[i].type, code = tBlockDataAddColData(bData, primaryKeyBlockCols[i].cid, primaryKeyBlockCols[i].type,

View File

@ -221,7 +221,7 @@ int32_t tsdbSttFileReadBlockDataByColumn(SSttFileReader *reader, const SSttBlk *
bData->nRow = hdr.nRow; bData->nRow = hdr.nRow;
// decode primary key column indices // decode primary key column indices
for (int32_t i = 0; i < hdr.numPrimaryKeyCols; i++) { for (int32_t i = 0; i < hdr.numOfPKs; i++) {
n += tGetBlockCol(reader->config->bufArr[0] + n, primaryKeyBlockCols + i); n += tGetBlockCol(reader->config->bufArr[0] + n, primaryKeyBlockCols + i);
} }
@ -249,7 +249,7 @@ int32_t tsdbSttFileReadBlockDataByColumn(SSttFileReader *reader, const SSttBlk *
n += hdr.szKey; n += hdr.szKey;
// decode primary key columns // decode primary key columns
for (int32_t i = 0; i < hdr.numPrimaryKeyCols; i++) { for (int32_t i = 0; i < hdr.numOfPKs; i++) {
SColData *pColData; SColData *pColData;
code = tBlockDataAddColData(bData, primaryKeyBlockCols[i].cid, primaryKeyBlockCols[i].type, code = tBlockDataAddColData(bData, primaryKeyBlockCols[i].cid, primaryKeyBlockCols[i].type,

View File

@ -483,10 +483,10 @@ int32_t tPutDelIdx(uint8_t *p, void *ph) {
SDelIdx *pDelIdx = (SDelIdx *)ph; SDelIdx *pDelIdx = (SDelIdx *)ph;
int32_t n = 0; int32_t n = 0;
n += tPutI64(p ? p + n : p, pDelIdx->suid, true); n += tPutI64(p ? p + n : p, pDelIdx->suid);
n += tPutI64(p ? p + n : p, pDelIdx->uid, true); n += tPutI64(p ? p + n : p, pDelIdx->uid);
n += tPutI64v(p ? p + n : p, pDelIdx->offset, true); n += tPutI64v(p ? p + n : p, pDelIdx->offset);
n += tPutI64v(p ? p + n : p, pDelIdx->size, true); n += tPutI64v(p ? p + n : p, pDelIdx->size);
return n; return n;
} }
@ -510,9 +510,9 @@ int32_t tPutDelData(uint8_t *p, void *ph) {
SDelData *pDelData = (SDelData *)ph; SDelData *pDelData = (SDelData *)ph;
int32_t n = 0; int32_t n = 0;
n += tPutI64v(p ? p + n : p, pDelData->version, true); n += tPutI64v(p ? p + n : p, pDelData->version);
n += tPutI64(p ? p + n : p, pDelData->sKey, true); n += tPutI64(p ? p + n : p, pDelData->sKey);
n += tPutI64(p ? p + n : p, pDelData->eKey, true); n += tPutI64(p ? p + n : p, pDelData->eKey);
return n; return n;
} }
@ -1458,7 +1458,7 @@ int32_t tCmprBlockData(SBlockData *pBlockData, int8_t cmprAlg, uint8_t **ppOut,
SColData *pColData = tBlockDataGetColDataByIdx(pBlockData, iColData); SColData *pColData = tBlockDataGetColDataByIdx(pBlockData, iColData);
if ((pColData->cflag & COL_IS_KEY) == 0) break; if ((pColData->cflag & COL_IS_KEY) == 0) break;
SBlockCol *pBlockCol = &primaryKeyBlockCols[hdr.numPrimaryKeyCols]; SBlockCol *pBlockCol = &primaryKeyBlockCols[hdr.numOfPKs];
pBlockCol->cid = pColData->cid; pBlockCol->cid = pColData->cid;
pBlockCol->type = pColData->type; pBlockCol->type = pColData->type;
pBlockCol->cflag = pColData->cflag; pBlockCol->cflag = pColData->cflag;
@ -1469,7 +1469,7 @@ int32_t tCmprBlockData(SBlockData *pBlockData, int8_t cmprAlg, uint8_t **ppOut,
if (code) goto _exit; if (code) goto _exit;
aBufSize[2] = aBufSize[2] + pBlockCol->szBitmap + pBlockCol->szOffset + pBlockCol->szValue; aBufSize[2] = aBufSize[2] + pBlockCol->szBitmap + pBlockCol->szOffset + pBlockCol->szValue;
hdr.numPrimaryKeyCols++; hdr.numOfPKs++;
} }
} }
@ -1478,7 +1478,7 @@ int32_t tCmprBlockData(SBlockData *pBlockData, int8_t cmprAlg, uint8_t **ppOut,
code = tRealloc(&aBuf[3], aBufSize[3]); code = tRealloc(&aBuf[3], aBufSize[3]);
if (code) goto _exit; if (code) goto _exit;
tPutDiskDataHdr(aBuf[3], &hdr); tPutDiskDataHdr(aBuf[3], &hdr);
for (int32_t i = 0; i < hdr.numPrimaryKeyCols; i++) { for (int32_t i = 0; i < hdr.numOfPKs; i++) {
code = tRealloc(&aBuf[3], aBufSize[3] + tPutBlockCol(NULL, &primaryKeyBlockCols[i])); code = tRealloc(&aBuf[3], aBufSize[3] + tPutBlockCol(NULL, &primaryKeyBlockCols[i]));
if (code) goto _exit; if (code) goto _exit;
aBufSize[3] += tPutBlockCol(aBuf[3] + aBufSize[3], &primaryKeyBlockCols[i]); aBufSize[3] += tPutBlockCol(aBuf[3] + aBufSize[3], &primaryKeyBlockCols[i]);
@ -1522,7 +1522,7 @@ int32_t tDecmprBlockData(uint8_t *pIn, int32_t szIn, SBlockData *pBlockData, uin
pBlockData->nRow = hdr.nRow; pBlockData->nRow = hdr.nRow;
// primary SBlockCol // primary SBlockCol
for (int32_t i = 0; i < hdr.numPrimaryKeyCols; i++) { for (int32_t i = 0; i < hdr.numOfPKs; i++) {
n += tGetBlockCol(pIn + n, &primaryKeyBlockCols[i]); n += tGetBlockCol(pIn + n, &primaryKeyBlockCols[i]);
} }
@ -1550,7 +1550,7 @@ int32_t tDecmprBlockData(uint8_t *pIn, int32_t szIn, SBlockData *pBlockData, uin
n += hdr.szKey; n += hdr.szKey;
// Primary key columns // Primary key columns
for (int32_t i = 0; i < hdr.numPrimaryKeyCols; i++) { for (int32_t i = 0; i < hdr.numOfPKs; i++) {
SColData *pColData; SColData *pColData;
code = tBlockDataAddColData(pBlockData, primaryKeyBlockCols[i].cid, primaryKeyBlockCols[i].type, code = tBlockDataAddColData(pBlockData, primaryKeyBlockCols[i].cid, primaryKeyBlockCols[i].type,
@ -1606,7 +1606,7 @@ int32_t tPutDiskDataHdr(uint8_t *p, const SDiskDataHdr *pHdr) {
n += tPutI32v(p ? p + n : p, pHdr->nRow); n += tPutI32v(p ? p + n : p, pHdr->nRow);
n += tPutI8(p ? p + n : p, pHdr->cmprAlg); n += tPutI8(p ? p + n : p, pHdr->cmprAlg);
if (pHdr->fmtVer == 1) { if (pHdr->fmtVer == 1) {
n += tPutI8(p ? p + n : p, pHdr->numPrimaryKeyCols); n += tPutI8(p ? p + n : p, pHdr->numOfPKs);
} }
return n; return n;
@ -1627,9 +1627,9 @@ int32_t tGetDiskDataHdr(uint8_t *p, void *ph) {
n += tGetI32v(p + n, &pHdr->nRow); n += tGetI32v(p + n, &pHdr->nRow);
n += tGetI8(p + n, &pHdr->cmprAlg); n += tGetI8(p + n, &pHdr->cmprAlg);
if (pHdr->fmtVer == 1) { if (pHdr->fmtVer == 1) {
n += tGetI8(p + n, &pHdr->numPrimaryKeyCols); n += tGetI8(p + n, &pHdr->numOfPKs);
} else { } else {
pHdr->numPrimaryKeyCols = 0; pHdr->numOfPKs = 0;
} }
return n; return n;