提交 7678b6bb 编写于 作者: M Minglei Jin

Merge branch 'feat/tsdb_refact' of https://github.com/taosdata/TDengine into feat/tsdb_refact

...@@ -1031,21 +1031,25 @@ static int32_t tColDataUpdateOffset(SColData *pColData) { ...@@ -1031,21 +1031,25 @@ static int32_t tColDataUpdateOffset(SColData *pColData) {
ASSERT(pColData->nVal > 0); ASSERT(pColData->nVal > 0);
ASSERT(pColData->flag); ASSERT(pColData->flag);
ASSERT(IS_VAR_DATA_TYPE(pColData->type));
if (IS_VAR_DATA_TYPE(pColData->type) && (pColData->flag & HAS_VALUE)) { if ((pColData->flag & HAS_VALUE)) {
code = tsdbRealloc((uint8_t **)&pColData->aOffset, sizeof(int32_t) * pColData->nVal); code = tsdbRealloc((uint8_t **)&pColData->aOffset, sizeof(int32_t) * pColData->nVal);
if (code) goto _exit; if (code) goto _exit;
int32_t offset = 0; int32_t offset = 0;
for (int32_t iVal = 0; iVal < pColData->nVal; iVal++) { for (int32_t iVal = 0; iVal < pColData->nVal; iVal++) {
if (pColData->flag != HAS_VALUE) {
uint8_t v = GET_BIT2(pColData->pBitMap, iVal); uint8_t v = GET_BIT2(pColData->pBitMap, iVal);
if (v == 0 || v == 1) { if (v == 0 || v == 1) {
pColData->aOffset[iVal] = -1; pColData->aOffset[iVal] = -1;
} else { continue;
}
}
pColData->aOffset[iVal] = offset; pColData->aOffset[iVal] = offset;
offset += tGetValue(pColData->pData + offset, &value, pColData->type); offset += tGetValue(pColData->pData + offset, &value, pColData->type);
} }
}
ASSERT(offset == pColData->nData); ASSERT(offset == pColData->nData);
pColData->offsetValid = 1; pColData->offsetValid = 1;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册