fix more
This commit is contained in:
parent
f2e26de8c5
commit
26f740f26b
|
@ -110,7 +110,8 @@ void tColDataDestroy(void *ph);
|
||||||
void tColDataInit(SColData *pColData, int16_t cid, int8_t type, int8_t smaOn);
|
void tColDataInit(SColData *pColData, int16_t cid, int8_t type, int8_t smaOn);
|
||||||
void tColDataClear(SColData *pColData);
|
void tColDataClear(SColData *pColData);
|
||||||
int32_t tColDataAppendValue(SColData *pColData, SColVal *pColVal);
|
int32_t tColDataAppendValue(SColData *pColData, SColVal *pColVal);
|
||||||
void tColDataGetValue(SColData *pColData, int32_t iRow, SColVal *pColVal);
|
void tColDataGetValue(SColData *pColData, int32_t iVal, SColVal *pColVal);
|
||||||
|
uint8_t tColDataGetBitValue(SColData *pColData, int32_t iVal);
|
||||||
int32_t tColDataCopy(SColData *pColDataSrc, SColData *pColDataDest);
|
int32_t tColDataCopy(SColData *pColDataSrc, SColData *pColDataDest);
|
||||||
|
|
||||||
// STRUCT ================================
|
// STRUCT ================================
|
||||||
|
|
|
@ -1592,6 +1592,38 @@ void tColDataGetValue(SColData *pColData, int32_t iVal, SColVal *pColVal) {
|
||||||
tColDataGetValueImpl[pColData->flag](pColData, iVal, pColVal);
|
tColDataGetValueImpl[pColData->flag](pColData, iVal, pColVal);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
uint8_t tColDataGetBitValue(SColData *pColData, int32_t iVal) {
|
||||||
|
uint8_t v;
|
||||||
|
switch (pColData->flag) {
|
||||||
|
case HAS_NONE:
|
||||||
|
v = 0;
|
||||||
|
break;
|
||||||
|
case HAS_NULL:
|
||||||
|
v = 1;
|
||||||
|
break;
|
||||||
|
case (HAS_NULL | HAS_NONE):
|
||||||
|
v = GET_BIT1(pColData->pBitMap, iVal);
|
||||||
|
break;
|
||||||
|
case HAS_VALUE:
|
||||||
|
v = 2;
|
||||||
|
break;
|
||||||
|
case (HAS_VALUE | HAS_NONE):
|
||||||
|
v = GET_BIT1(pColData->pBitMap, iVal);
|
||||||
|
if (v) v = 2;
|
||||||
|
break;
|
||||||
|
case (HAS_VALUE | HAS_NULL):
|
||||||
|
v = GET_BIT1(pColData->pBitMap, iVal) + 1;
|
||||||
|
break;
|
||||||
|
case (HAS_VALUE | HAS_NULL | HAS_NONE):
|
||||||
|
v = GET_BIT2(pColData->pBitMap, iVal);
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
ASSERT(0);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return v;
|
||||||
|
}
|
||||||
|
|
||||||
int32_t tColDataCopy(SColData *pColDataSrc, SColData *pColDataDest) {
|
int32_t tColDataCopy(SColData *pColDataSrc, SColData *pColDataDest) {
|
||||||
int32_t code = 0;
|
int32_t code = 0;
|
||||||
int32_t size;
|
int32_t size;
|
||||||
|
|
|
@ -903,7 +903,7 @@ static int32_t copyBlockDataToSDataBlock(STsdbReader* pReader, STableBlockScanIn
|
||||||
// null value exists, check one-by-one
|
// null value exists, check one-by-one
|
||||||
if (pData->flag != HAS_VALUE) {
|
if (pData->flag != HAS_VALUE) {
|
||||||
for (int32_t j = pDumpInfo->rowIndex; rowIndex < remain; j += step, rowIndex++) {
|
for (int32_t j = pDumpInfo->rowIndex; rowIndex < remain; j += step, rowIndex++) {
|
||||||
uint8_t v = GET_BIT2(pData->pBitMap, j);
|
uint8_t v = tColDataGetBitValue(pData, j);
|
||||||
if (v == 0 || v == 1) {
|
if (v == 0 || v == 1) {
|
||||||
colDataSetNull_f(pColData->nullbitmap, rowIndex);
|
colDataSetNull_f(pColData->nullbitmap, rowIndex);
|
||||||
}
|
}
|
||||||
|
@ -4078,4 +4078,4 @@ void tsdbUntakeReadSnap(STsdb* pTsdb, STsdbReadSnap* pSnap) {
|
||||||
}
|
}
|
||||||
|
|
||||||
tsdbTrace("vgId:%d, untake read snapshot", TD_VID(pTsdb->pVnode));
|
tsdbTrace("vgId:%d, untake read snapshot", TD_VID(pTsdb->pVnode));
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue