diff --git a/source/dnode/vnode/src/vnd/vnodeStream.c b/source/dnode/vnode/src/vnd/vnodeStream.c index e1f47a81fa4..3e26cd7874d 100644 --- a/source/dnode/vnode/src/vnd/vnodeStream.c +++ b/source/dnode/vnode/src/vnd/vnodeStream.c @@ -151,7 +151,7 @@ static int32_t buildRsp(SSDataBlock* pBlock, void** data, size_t* size) { int32_t code = 0; int32_t lino = 0; void* buf = NULL; - STREAM_CHECK_CONDITION_GOTO(pBlock == NULL || pBlock->info.rows == 0, TSDB_CODE_STREAM_NO_DATA); + STREAM_CHECK_CONDITION_GOTO(pBlock == NULL || pBlock->info.rows == 0, TSDB_CODE_SUCCESS); size_t dataEncodeSize = blockGetEncodeSize(pBlock); buf = rpcMallocCont(dataEncodeSize); STREAM_CHECK_NULL_GOTO(buf, terrno); diff --git a/source/libs/new-stream/src/streamTriggerTask.c b/source/libs/new-stream/src/streamTriggerTask.c index 837d4b69e94..1e16f0c4b44 100644 --- a/source/libs/new-stream/src/streamTriggerTask.c +++ b/source/libs/new-stream/src/streamTriggerTask.c @@ -2440,20 +2440,20 @@ int32_t streamTriggerProcessRsp(SStreamTask *pStreamTask, SRpcMsg *pRsp) { case STRIGGER_PULL_WAL_TS_DATA: case STRIGGER_PULL_WAL_TRIGGER_DATA: case STRIGGER_PULL_WAL_CALC_DATA: { - if (pRsp->code == TSDB_CODE_SUCCESS || pRsp->code == TSDB_CODE_STREAM_NO_DATA) { + if (pRsp->code == TSDB_CODE_SUCCESS) { SSDataBlock *pResBlock = pContext->pullResDataBlock[pReq->type]; if (pResBlock == NULL) { pResBlock = taosMemoryCalloc(1, sizeof(SSDataBlock)); QUERY_CHECK_NULL(pResBlock, code, lino, _end, terrno); pContext->pullResDataBlock[pReq->type] = pResBlock; } - if (pRsp->code == TSDB_CODE_SUCCESS) { + if (pRsp->contLen == 0){ + blockDataEmpty(pResBlock); + } else { const char *pEnd = pRsp->pCont; code = blockDecode(pResBlock, pRsp->pCont, &pEnd); QUERY_CHECK_CODE(code, lino, _end); QUERY_CHECK_CONDITION(pEnd == pRsp->pCont + pRsp->contLen, code, lino, _end, TSDB_CODE_INTERNAL_ERROR); - } else if (pRsp->code == TSDB_CODE_STREAM_NO_DATA) { - blockDataEmpty(pResBlock); } code = strtcProcessPullRsp(pContext, pResBlock); QUERY_CHECK_CODE(code, lino, _end);