fix:[TD-32526] consumer null if add column because of pDataBlock not clear
This commit is contained in:
parent
5663519d47
commit
db97e26d32
|
@ -562,9 +562,18 @@ int32_t tqMaskBlock(SSchemaWrapper* pDst, SSDataBlock* pBlock, const SSchemaWrap
|
|||
return 0;
|
||||
}
|
||||
|
||||
static int32_t buildResSDataBlock(SSDataBlock* pBlock, SSchemaWrapper* pSchema, const SArray* pColIdList) {
|
||||
static int32_t buildResSDataBlock(STqReader* pReader, SSchemaWrapper* pSchema, const SArray* pColIdList) {
|
||||
SSDataBlock* pBlock = pReader->pResBlock;
|
||||
if (blockDataGetNumOfCols(pBlock) > 0) {
|
||||
return TSDB_CODE_SUCCESS;
|
||||
blockDataDestroy(pBlock);
|
||||
int32_t code = createDataBlock(&pReader->pResBlock);
|
||||
if (code) {
|
||||
return code;
|
||||
}
|
||||
pBlock = pReader->pResBlock;
|
||||
|
||||
pBlock->info.id.uid = pReader->cachedSchemaUid;
|
||||
pBlock->info.version = pReader->msg.ver;
|
||||
}
|
||||
|
||||
int32_t numOfCols = taosArrayGetSize(pColIdList);
|
||||
|
@ -678,10 +687,9 @@ int32_t tqRetrieveDataBlock(STqReader* pReader, SSDataBlock** pRes, const char*
|
|||
vgId, suid, uid, sversion, pReader->pSchemaWrapper->version);
|
||||
return TSDB_CODE_TQ_INTERNAL_ERROR;
|
||||
}
|
||||
if (blockDataGetNumOfCols(pBlock) == 0) {
|
||||
code = buildResSDataBlock(pReader->pResBlock, pReader->pSchemaWrapper, pReader->pColIdList);
|
||||
TSDB_CHECK_CODE(code, line, END);
|
||||
}
|
||||
code = buildResSDataBlock(pReader, pReader->pSchemaWrapper, pReader->pColIdList);
|
||||
TSDB_CHECK_CODE(code, line, END);
|
||||
pBlock = pReader->pResBlock;
|
||||
}
|
||||
|
||||
int32_t numOfRows = 0;
|
||||
|
|
|
@ -2877,7 +2877,6 @@ static int32_t setBlockIntoRes(SStreamScanInfo* pInfo, const SSDataBlock* pBlock
|
|||
return 0;
|
||||
}
|
||||
|
||||
blockDataFreeRes((SSDataBlock*)pBlock);
|
||||
code = calBlockTbName(pInfo, pInfo->pRes, 0);
|
||||
QUERY_CHECK_CODE(code, lino, _end);
|
||||
|
||||
|
|
Loading…
Reference in New Issue