fix:[TS-5776]add raw type from consumer
This commit is contained in:
parent
47a6836c27
commit
3da00b7c74
|
@ -4267,7 +4267,8 @@ typedef struct {
|
|||
void* rawData;
|
||||
};
|
||||
};
|
||||
void* data; //for free, only effected if type is data or metadata. raw data not effected
|
||||
void* data; //for free in client, only effected if type is data or metadata. raw data not effected
|
||||
bool blockDataElementFree; // if true, free blockDataElement in blockData,(true in server, false in client)
|
||||
|
||||
} SMqDataRsp;
|
||||
|
||||
|
|
|
@ -11451,6 +11451,8 @@ int32_t tDecodeMqDataRspCommon(SDecoder *pDecoder, SMqDataRsp *pRsp) {
|
|||
if (taosArrayPush(pRsp->blockData, &data) == NULL) {
|
||||
TAOS_CHECK_EXIT(terrno);
|
||||
}
|
||||
pRsp->blockDataElementFree = false;
|
||||
|
||||
int32_t len = bLen;
|
||||
if (taosArrayPush(pRsp->blockDataLen, &len) == NULL) {
|
||||
TAOS_CHECK_EXIT(terrno);
|
||||
|
@ -11510,7 +11512,11 @@ _exit:
|
|||
static void tDeleteMqDataRspCommon(SMqDataRsp *pRsp) {
|
||||
taosArrayDestroy(pRsp->blockDataLen);
|
||||
pRsp->blockDataLen = NULL;
|
||||
taosArrayDestroy(pRsp->blockData);
|
||||
if (pRsp->blockDataElementFree){
|
||||
taosArrayDestroyP(pRsp->blockData)
|
||||
} else {
|
||||
taosArrayDestroy(pRsp->blockData);
|
||||
}
|
||||
pRsp->blockData = NULL;
|
||||
taosArrayDestroyP(pRsp->blockSchema, (FDelete)tDeleteSchemaWrapper);
|
||||
pRsp->blockSchema = NULL;
|
||||
|
|
|
@ -62,7 +62,7 @@ static int32_t tqAddBlockDataToRsp(const SSDataBlock* pBlock, SMqDataRsp* pRsp,
|
|||
actualLen += sizeof(SRetrieveTableRspForTmq);
|
||||
TSDB_CHECK_NULL(taosArrayPush(pRsp->blockDataLen, &actualLen), code, lino, END, terrno);
|
||||
TSDB_CHECK_NULL(taosArrayPush(pRsp->blockData, &buf), code, lino, END, terrno);
|
||||
|
||||
pRsp->blockDataElementFree = true;
|
||||
buf = NULL;
|
||||
END:
|
||||
if (code != 0){
|
||||
|
|
Loading…
Reference in New Issue