fix: count(tag) when use qnode
This commit is contained in:
parent
b1841ceff5
commit
5434019d2b
|
@ -2028,6 +2028,9 @@ int32_t setResultDataPtr(SReqResultInfo* pResultInfo, TAOS_FIELD* pFields, int32
|
||||||
int32_t rows = *(int32_t*)p;
|
int32_t rows = *(int32_t*)p;
|
||||||
p += sizeof(int32_t);
|
p += sizeof(int32_t);
|
||||||
|
|
||||||
|
// bool blankFill = *(bool*)p;
|
||||||
|
p += sizeof(bool);
|
||||||
|
|
||||||
int32_t cols = *(int32_t*)p;
|
int32_t cols = *(int32_t*)p;
|
||||||
p += sizeof(int32_t);
|
p += sizeof(int32_t);
|
||||||
|
|
||||||
|
|
|
@ -866,9 +866,9 @@ size_t blockDataGetRowSize(SSDataBlock* pBlock) {
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
size_t blockDataGetSerialMetaSize(uint32_t numOfCols) {
|
size_t blockDataGetSerialMetaSize(uint32_t numOfCols) {
|
||||||
// | version | total length | total rows | total columns | flag seg| block group id | column schema
|
// | version | total length | total rows | blankFull | total columns | flag seg| block group id | column schema
|
||||||
// | each column length |
|
// | each column length |
|
||||||
return sizeof(int32_t) + sizeof(int32_t) + sizeof(int32_t) + sizeof(int32_t) + sizeof(int32_t) + sizeof(uint64_t) +
|
return sizeof(int32_t) + sizeof(int32_t) + sizeof(int32_t) + sizeof(bool) + sizeof(int32_t) + sizeof(int32_t) + sizeof(uint64_t) +
|
||||||
numOfCols * (sizeof(int8_t) + sizeof(int32_t)) + numOfCols * sizeof(int32_t);
|
numOfCols * (sizeof(int8_t) + sizeof(int32_t)) + numOfCols * sizeof(int32_t);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1436,6 +1436,7 @@ SSDataBlock* createOneDataBlock(const SSDataBlock* pDataBlock, bool copyData) {
|
||||||
pBlock->info.capacity = 0;
|
pBlock->info.capacity = 0;
|
||||||
pBlock->info.rowSize = 0;
|
pBlock->info.rowSize = 0;
|
||||||
pBlock->info.id = pDataBlock->info.id;
|
pBlock->info.id = pDataBlock->info.id;
|
||||||
|
pBlock->info.blankFill = pDataBlock->info.blankFill;
|
||||||
|
|
||||||
size_t numOfCols = taosArrayGetSize(pDataBlock->pDataBlock);
|
size_t numOfCols = taosArrayGetSize(pDataBlock->pDataBlock);
|
||||||
for (int32_t i = 0; i < numOfCols; ++i) {
|
for (int32_t i = 0; i < numOfCols; ++i) {
|
||||||
|
@ -2207,6 +2208,10 @@ int32_t blockEncode(const SSDataBlock* pBlock, char* data, int32_t numOfCols) {
|
||||||
data += sizeof(int32_t);
|
data += sizeof(int32_t);
|
||||||
ASSERT(*rows > 0);
|
ASSERT(*rows > 0);
|
||||||
|
|
||||||
|
bool* blankFill = (bool*)data;
|
||||||
|
*blankFill = pBlock->info.blankFill;
|
||||||
|
data += sizeof(bool);
|
||||||
|
|
||||||
int32_t* cols = (int32_t*)data;
|
int32_t* cols = (int32_t*)data;
|
||||||
*cols = numOfCols;
|
*cols = numOfCols;
|
||||||
data += sizeof(int32_t);
|
data += sizeof(int32_t);
|
||||||
|
@ -2302,6 +2307,9 @@ const char* blockDecode(SSDataBlock* pBlock, const char* pData) {
|
||||||
int32_t numOfRows = *(int32_t*)pStart;
|
int32_t numOfRows = *(int32_t*)pStart;
|
||||||
pStart += sizeof(int32_t);
|
pStart += sizeof(int32_t);
|
||||||
|
|
||||||
|
bool blankFill = *(bool*)pStart;
|
||||||
|
pStart += sizeof(bool);
|
||||||
|
|
||||||
// total columns sizeof(int32_t)
|
// total columns sizeof(int32_t)
|
||||||
int32_t numOfCols = *(int32_t*)pStart;
|
int32_t numOfCols = *(int32_t*)pStart;
|
||||||
pStart += sizeof(int32_t);
|
pStart += sizeof(int32_t);
|
||||||
|
@ -2377,6 +2385,7 @@ const char* blockDecode(SSDataBlock* pBlock, const char* pData) {
|
||||||
|
|
||||||
pBlock->info.dataLoad = 1;
|
pBlock->info.dataLoad = 1;
|
||||||
pBlock->info.rows = numOfRows;
|
pBlock->info.rows = numOfRows;
|
||||||
|
pBlock->info.blankFill = blankFill;
|
||||||
ASSERT(pStart - pData == dataLen);
|
ASSERT(pStart - pData == dataLen);
|
||||||
return pStart;
|
return pStart;
|
||||||
}
|
}
|
||||||
|
|
|
@ -660,7 +660,7 @@ int rawBlockBindData(SQuery* query, STableMeta* pTableMeta, void* data, SVCreate
|
||||||
}
|
}
|
||||||
|
|
||||||
char* p = (char*)data;
|
char* p = (char*)data;
|
||||||
// | version | total length | total rows | total columns | flag seg| block group id | column schema | each column
|
// | version | total length | total rows | blankFill | total columns | flag seg| block group id | column schema | each column
|
||||||
// length |
|
// length |
|
||||||
int32_t version = *(int32_t*)data;
|
int32_t version = *(int32_t*)data;
|
||||||
p += sizeof(int32_t);
|
p += sizeof(int32_t);
|
||||||
|
@ -669,6 +669,9 @@ int rawBlockBindData(SQuery* query, STableMeta* pTableMeta, void* data, SVCreate
|
||||||
int32_t numOfRows = *(int32_t*)p;
|
int32_t numOfRows = *(int32_t*)p;
|
||||||
p += sizeof(int32_t);
|
p += sizeof(int32_t);
|
||||||
|
|
||||||
|
// blankFill
|
||||||
|
p += sizeof(bool);
|
||||||
|
|
||||||
int32_t numOfCols = *(int32_t*)p;
|
int32_t numOfCols = *(int32_t*)p;
|
||||||
p += sizeof(int32_t);
|
p += sizeof(int32_t);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue