diff --git a/source/client/src/clientMonitor.c b/source/client/src/clientMonitor.c index 2488fa12b3..f9586da366 100644 --- a/source/client/src/clientMonitor.c +++ b/source/client/src/clientMonitor.c @@ -727,18 +727,25 @@ static void monitorSendAllSlowLogFromTempDir(int64_t clusterId) { tscError("failed to open file:%s since %s", filename, terrstr()); continue; } - char* tmp = taosStrdup(filename); - if (tmp == NULL) { - tscError("failed to dup string:%s since %s", filename, terrstr()); - continue; - } if (taosLockFile(pFile) < 0) { tscInfo("failed to lock file:%s since %s, maybe used by other process", filename, terrstr()); int32_t ret = taosCloseFile(&pFile); if (ret != 0){ tscError("failed to close file:%p ret:%d", pFile, ret); } - taosMemoryFree(tmp); + continue; + } + char* tmp = taosStrdup(filename); + if (tmp == NULL) { + tscError("failed to dup string:%s since %s", filename, terrstr()); + if (taosUnLockFile(pFile) != 0) { + tscError("failed to unlock file:%s, terrno:%d", filename, terrno); + return; + } + if (taosCloseFile(&(pFile)) != 0) { + tscError("failed to close file:%s, terrno:%d", filename, terrno); + return; + } continue; } monitorSendSlowLogAtBeginning(clusterId, &tmp, pFile, 0); diff --git a/source/client/src/clientTmq.c b/source/client/src/clientTmq.c index f466c3bde1..8da7367c30 100644 --- a/source/client/src/clientTmq.c +++ b/source/client/src/clientTmq.c @@ -495,10 +495,10 @@ int32_t tmq_list_append(tmq_list_t* list, const char* src) { SArray* container = &list->container; if (src == NULL || src[0] == 0) return TSDB_CODE_INVALID_PARA; char* topic = taosStrdup(src); - if (topic == NULL) return TSDB_CODE_OUT_OF_MEMORY; + if (topic == NULL) return terrno; if (taosArrayPush(container, &topic) == NULL) { taosMemoryFree(topic); - return TSDB_CODE_INVALID_PARA; + return terrno; } return 0; } @@ -3546,7 +3546,7 @@ int32_t tmq_get_topic_assignment(tmq_t* tmq, const char* pTopicName, tmq_topic_a (void)taosThreadMutexInit(&pCommon->mutex, 0); pCommon->pTopicName = taosStrdup(pTopic->topicName); if (pCommon->pTopicName == NULL) { - code = TSDB_CODE_OUT_OF_MEMORY; + code = terrno; goto end; } pCommon->consumerId = tmq->consumerId; diff --git a/source/common/src/tglobal.c b/source/common/src/tglobal.c index f38257c25c..a3220706c7 100644 --- a/source/common/src/tglobal.c +++ b/source/common/src/tglobal.c @@ -1093,7 +1093,7 @@ int32_t taosSetSlowLogScope(char *pScopeStr, int32_t *pScope) { taosMemoryFreeClear(tmp); tmp = taosStrdup(scope); if (tmp == NULL) { - TAOS_RETURN(TSDB_CODE_OUT_OF_MEMORY); + TAOS_RETURN(terrno); } (void)strtrim(tmp); if (0 == strcasecmp(tmp, "all")) { diff --git a/source/dnode/mnode/impl/src/mndConsumer.c b/source/dnode/mnode/impl/src/mndConsumer.c index fcdb44da26..4365b83f86 100644 --- a/source/dnode/mnode/impl/src/mndConsumer.c +++ b/source/dnode/mnode/impl/src/mndConsumer.c @@ -795,7 +795,7 @@ static int32_t mndConsumerActionUpdate(SSdb *pSdb, SMqConsumerObj *pOldConsumer, } char *pNewTopic = taosStrdup(tmp); if (pNewTopic == NULL) { - return TSDB_CODE_OUT_OF_MEMORY; + return terrno; } removeFromTopicList(pOldConsumer->rebNewTopics, pNewTopic, pOldConsumer->consumerId, "new"); bool existing = existInCurrentTopicList(pOldConsumer, pNewTopic); diff --git a/source/dnode/vnode/src/tq/tq.c b/source/dnode/vnode/src/tq/tq.c index 16447afc5a..05d510bb1a 100644 --- a/source/dnode/vnode/src/tq/tq.c +++ b/source/dnode/vnode/src/tq/tq.c @@ -71,7 +71,7 @@ int32_t tqOpen(const char* path, SVnode* pVnode) { pVnode->pTq = pTq; pTq->path = taosStrdup(path); if (pTq->path == NULL) { - return TSDB_CODE_OUT_OF_MEMORY; + return terrno; } pTq->pVnode = pVnode; diff --git a/source/dnode/vnode/src/tq/tqMeta.c b/source/dnode/vnode/src/tq/tqMeta.c index eb374ee85e..205f8e7707 100644 --- a/source/dnode/vnode/src/tq/tqMeta.c +++ b/source/dnode/vnode/src/tq/tqMeta.c @@ -343,7 +343,7 @@ int32_t tqMetaCreateHandle(STQ* pTq, SMqRebVgReq* req, STqHandle* handle) { if (req->subType == TOPIC_SUB_TYPE__COLUMN) { void *tmp = taosStrdup(req->qmsg); if (tmp == NULL) { - return TSDB_CODE_OUT_OF_MEMORY; + return terrno; } handle->execHandle.execCol.qmsg = tmp; } else if (req->subType == TOPIC_SUB_TYPE__DB) { @@ -356,7 +356,7 @@ int32_t tqMetaCreateHandle(STQ* pTq, SMqRebVgReq* req, STqHandle* handle) { handle->execHandle.execTb.suid = req->suid; void *tmp = taosStrdup(req->qmsg); if (tmp == NULL) { - return TSDB_CODE_OUT_OF_MEMORY; + return terrno; } handle->execHandle.execTb.qmsg = tmp; } diff --git a/source/dnode/vnode/src/tq/tqScan.c b/source/dnode/vnode/src/tq/tqScan.c index 70c21b5f00..48a840008b 100644 --- a/source/dnode/vnode/src/tq/tqScan.c +++ b/source/dnode/vnode/src/tq/tqScan.c @@ -71,7 +71,7 @@ static int32_t tqAddTbNameToRsp(const STQ* pTq, int64_t uid, void* pRsp, int32_t char* tbName = taosStrdup(mr.me.name); if (tbName == NULL) { metaReaderClear(&mr); - return TSDB_CODE_OUT_OF_MEMORY; + return terrno; } if(taosArrayPush(((SMqDataRspCommon*)pRsp)->blockTbName, &tbName) == NULL){ continue; @@ -219,7 +219,7 @@ int32_t tqScanTaosx(STQ* pTq, const STqHandle* pHandle, STaosxRsp* pRsp, SMqBatc char* tbName = taosStrdup(qExtractTbnameFromTask(task)); if (tbName == NULL) { tqError("vgId:%d, failed to add tbname to rsp msg, null", pTq->pVnode->config.vgId); - return TSDB_CODE_OUT_OF_MEMORY; + return terrno; } if (taosArrayPush(pRsp->common.blockTbName, &tbName) == NULL){ tqError("vgId:%d, failed to add tbname to rsp msg", pTq->pVnode->config.vgId);