From 050d1bc002b447282b48da4fcb5ebe663e96e99f Mon Sep 17 00:00:00 2001 From: Hongze Cheng Date: Tue, 5 Mar 2024 17:25:02 +0800 Subject: [PATCH] more code --- source/dnode/vnode/src/tsdb/tsdbUtil.c | 212 ------------------------- 1 file changed, 212 deletions(-) diff --git a/source/dnode/vnode/src/tsdb/tsdbUtil.c b/source/dnode/vnode/src/tsdb/tsdbUtil.c index 8643adc269..aa78e3260b 100644 --- a/source/dnode/vnode/src/tsdb/tsdbUtil.c +++ b/source/dnode/vnode/src/tsdb/tsdbUtil.c @@ -1378,218 +1378,6 @@ SColData *tBlockDataGetColData(SBlockData *pBlockData, int16_t cid) { return NULL; } -#if 0 -int32_t tCmprBlockData(SBlockData *pBlockData, int8_t cmprAlg, uint8_t **ppOut, int32_t *szOut, uint8_t *aBuf[], - int32_t aBufSize[]) { - int32_t code = 0; - SBlockCol primaryKeyBlockCols[TD_MAX_PK_COLS]; - SDiskDataHdr hdr = { - .delimiter = TSDB_FILE_DLMT, - .fmtVer = 0, - .suid = pBlockData->suid, - .uid = pBlockData->uid, - .nRow = pBlockData->nRow, - .cmprAlg = cmprAlg, - }; - - // encode ================= - // columns AND SBlockCol - aBufSize[0] = 0; - for (int32_t iColData = 0; iColData < pBlockData->nColData; iColData++) { - SColData *pColData = tBlockDataGetColDataByIdx(pBlockData, iColData); - - ASSERT(pColData->flag); - - if (pColData->flag == HAS_NONE) continue; - if (pColData->cflag & COL_IS_KEY) { - ASSERT(pColData->flag == HAS_VALUE); - hdr.fmtVer = 1; - continue; - } - - SBlockCol blockCol = {.cid = pColData->cid, - .type = pColData->type, - .cflag = pColData->cflag, - .flag = pColData->flag, - .szOrigin = pColData->nData}; - - if (pColData->flag != HAS_NULL) { - code = tsdbCmprColData(pColData, cmprAlg, &blockCol, &aBuf[0], aBufSize[0], &aBuf[2]); - if (code) goto _exit; - - blockCol.offset = aBufSize[0]; - aBufSize[0] = aBufSize[0] + blockCol.szBitmap + blockCol.szOffset + blockCol.szValue; - } - - code = tRealloc(&aBuf[1], hdr.szBlkCol + tPutBlockCol(NULL, &blockCol)); - if (code) goto _exit; - hdr.szBlkCol += tPutBlockCol(aBuf[1] + hdr.szBlkCol, &blockCol); - } - - // SBlockCol - aBufSize[1] = hdr.szBlkCol; - - aBufSize[2] = 0; - // uid - if (pBlockData->uid == 0) { - code = tsdbCmprData((uint8_t *)pBlockData->aUid, sizeof(int64_t) * pBlockData->nRow, TSDB_DATA_TYPE_BIGINT, cmprAlg, - &aBuf[2], aBufSize[2], &hdr.szUid, &aBuf[3]); - if (code) goto _exit; - } - aBufSize[2] += hdr.szUid; - - // version - code = tsdbCmprData((uint8_t *)pBlockData->aVersion, sizeof(int64_t) * pBlockData->nRow, TSDB_DATA_TYPE_BIGINT, - cmprAlg, &aBuf[2], aBufSize[2], &hdr.szVer, &aBuf[3]); - if (code) goto _exit; - aBufSize[2] += hdr.szVer; - - // ts - code = tsdbCmprData((uint8_t *)pBlockData->aTSKEY, sizeof(TSKEY) * pBlockData->nRow, TSDB_DATA_TYPE_TIMESTAMP, - cmprAlg, &aBuf[2], aBufSize[2], &hdr.szKey, &aBuf[3]); - if (code) goto _exit; - aBufSize[2] += hdr.szKey; - - // primary key columns - if (hdr.fmtVer == 1) { - for (int32_t iColData = 0; iColData < pBlockData->nColData; iColData++) { - SColData *pColData = tBlockDataGetColDataByIdx(pBlockData, iColData); - if ((pColData->cflag & COL_IS_KEY) == 0) break; - - SBlockCol *pBlockCol = &primaryKeyBlockCols[hdr.numOfPKs]; - pBlockCol->cid = pColData->cid; - pBlockCol->type = pColData->type; - pBlockCol->cflag = pColData->cflag; - pBlockCol->flag = pColData->flag; - pBlockCol->szOrigin = pColData->nData; - - code = tsdbCmprColData(pColData, cmprAlg, pBlockCol, &aBuf[2], aBufSize[2], &aBuf[3]); - if (code) goto _exit; - aBufSize[2] = aBufSize[2] + pBlockCol->szBitmap + pBlockCol->szOffset + pBlockCol->szValue; - - hdr.numOfPKs++; - } - } - - // hdr - aBufSize[3] = tPutDiskDataHdr(NULL, &hdr); - code = tRealloc(&aBuf[3], aBufSize[3]); - if (code) goto _exit; - tPutDiskDataHdr(aBuf[3], &hdr); - for (int32_t i = 0; i < hdr.numOfPKs; i++) { - code = tRealloc(&aBuf[3], aBufSize[3] + tPutBlockCol(NULL, &primaryKeyBlockCols[i])); - if (code) goto _exit; - aBufSize[3] += tPutBlockCol(aBuf[3] + aBufSize[3], &primaryKeyBlockCols[i]); - } - - // aggragate - if (ppOut) { - *szOut = aBufSize[0] + aBufSize[1] + aBufSize[2] + aBufSize[3]; - code = tRealloc(ppOut, *szOut); - if (code) goto _exit; - - memcpy(*ppOut, aBuf[3], aBufSize[3]); - memcpy(*ppOut + aBufSize[3], aBuf[2], aBufSize[2]); - if (aBufSize[1]) { - memcpy(*ppOut + aBufSize[3] + aBufSize[2], aBuf[1], aBufSize[1]); - } - if (aBufSize[0]) { - memcpy(*ppOut + aBufSize[3] + aBufSize[2] + aBufSize[1], aBuf[0], aBufSize[0]); - } - } - -_exit: - return code; -} - -int32_t tDecmprBlockData(uint8_t *pIn, int32_t szIn, SBlockData *pBlockData, uint8_t *aBuf[]) { - int32_t code = 0; - - tBlockDataReset(pBlockData); - - int32_t n = 0; - SDiskDataHdr hdr = {0}; - SBlockCol primaryKeyBlockCols[TD_MAX_PK_COLS]; - - // SDiskDataHdr - n += tGetDiskDataHdr(pIn + n, &hdr); - ASSERT(hdr.delimiter == TSDB_FILE_DLMT); - - pBlockData->suid = hdr.suid; - pBlockData->uid = hdr.uid; - pBlockData->nRow = hdr.nRow; - - // primary SBlockCol - for (int32_t i = 0; i < hdr.numOfPKs; i++) { - n += tGetBlockCol(pIn + n, &primaryKeyBlockCols[i]); - } - - // uid - if (hdr.uid == 0) { - ASSERT(hdr.szUid); - code = tsdbDecmprData(pIn + n, hdr.szUid, TSDB_DATA_TYPE_BIGINT, hdr.cmprAlg, (uint8_t **)&pBlockData->aUid, - sizeof(int64_t) * hdr.nRow, &aBuf[0]); - if (code) goto _exit; - } else { - ASSERT(!hdr.szUid); - } - n += hdr.szUid; - - // version - code = tsdbDecmprData(pIn + n, hdr.szVer, TSDB_DATA_TYPE_BIGINT, hdr.cmprAlg, (uint8_t **)&pBlockData->aVersion, - sizeof(int64_t) * hdr.nRow, &aBuf[0]); - if (code) goto _exit; - n += hdr.szVer; - - // TSKEY - code = tsdbDecmprData(pIn + n, hdr.szKey, TSDB_DATA_TYPE_TIMESTAMP, hdr.cmprAlg, (uint8_t **)&pBlockData->aTSKEY, - sizeof(TSKEY) * hdr.nRow, &aBuf[0]); - if (code) goto _exit; - n += hdr.szKey; - - // Primary key columns - for (int32_t i = 0; i < hdr.numOfPKs; i++) { - SColData *pColData; - - code = tBlockDataAddColData(pBlockData, primaryKeyBlockCols[i].cid, primaryKeyBlockCols[i].type, - primaryKeyBlockCols[i].cflag, &pColData); - if (code) goto _exit; - - code = tsdbDecmprColData(pIn + n, &primaryKeyBlockCols[i], hdr.cmprAlg, hdr.nRow, pColData, &aBuf[0]); - if (code) goto _exit; - - n = n + primaryKeyBlockCols[i].szBitmap + primaryKeyBlockCols[i].szOffset + primaryKeyBlockCols[i].szValue; - } - - // regular key columns - if (hdr.szBlkCol > 0) { - int32_t nt = 0; - while (nt < hdr.szBlkCol) { - SColData *pColData; - SBlockCol blockCol = {0}; - nt += tGetBlockCol(pIn + n + nt, &blockCol); - - code = tBlockDataAddColData(pBlockData, blockCol.cid, blockCol.type, blockCol.cflag, &pColData); - if (code) goto _exit; - - if (blockCol.flag == HAS_NULL) { - for (int32_t iRow = 0; iRow < hdr.nRow; iRow++) { - code = tColDataAppendValue(pColData, &COL_VAL_NULL(blockCol.cid, blockCol.type)); - if (code) goto _exit; - } - } else { - code = tsdbDecmprColData(pIn + n + hdr.szBlkCol + blockCol.offset, &blockCol, hdr.cmprAlg, hdr.nRow, pColData, - &aBuf[0]); - if (code) goto _exit; - } - } - } - -_exit: - return code; -} -#endif - static int32_t tBlockDataCompressKeyPart(SBlockData *bData, SDiskDataHdr *hdr, SBuffer *buffer, SBuffer *assist) { int32_t code = 0; int32_t lino = 0;