fix mem problem

This commit is contained in:
yihaoDeng 2024-03-23 11:49:09 +00:00
parent 18e927f20a
commit f5c8c8f7c5
5 changed files with 20 additions and 13 deletions

View File

@ -548,7 +548,6 @@ struct SSchemaExt {
uint32_t compress;
};
//
struct SSchema2 {
@ -2810,6 +2809,7 @@ static FORCE_INLINE void tdDestroySVCreateTbReq(SVCreateTbReq* req) {
} else if (req->type == TSDB_NORMAL_TABLE) {
taosMemoryFreeClear(req->ntb.schemaRow.pSchema);
}
taosMemoryFreeClear(req->colCmpr.pColCmpr);
}
typedef struct {

View File

@ -8348,6 +8348,7 @@ void tFreeSMAlterStbRsp(SMAlterStbRsp *pRsp) {
if (pRsp->pMeta) {
taosMemoryFree(pRsp->pMeta->pSchemas);
taosMemoryFree(pRsp->pMeta->pSchemaExt);
taosMemoryFree(pRsp->pMeta);
}
}

View File

@ -63,6 +63,7 @@ int metaGetTableEntryByVersion(SMetaReader *pReader, int64_t version, tb_uid_t u
if (metaDecodeEntry(&pReader->coder, &pReader->me) < 0) {
goto _err;
}
taosMemoryFreeClear(pReader->me.colCmpr.pColCmpr);
return 0;
@ -361,6 +362,7 @@ _query:
version = ((SUidIdxVal *)pData)[0].version;
tdbTbGet(pMeta->pTbDb, &(STbDbKey){.uid = uid, .version = version}, sizeof(STbDbKey), &pData, &nData);
SMetaEntry me = {0};
tDecoderInit(&dc, pData, nData);
metaDecodeEntry(&dc, &me);
@ -368,6 +370,7 @@ _query:
if (sver == -1 || sver == me.stbEntry.schemaRow.version) {
pSchema = tCloneSSchemaWrapper(&me.stbEntry.schemaRow);
tDecoderClear(&dc);
taosMemoryFree(me.colCmpr.pColCmpr);
goto _exit;
}
} else if (me.type == TSDB_CHILD_TABLE) {
@ -378,10 +381,12 @@ _query:
if (sver == -1 || sver == me.ntbEntry.schemaRow.version) {
pSchema = tCloneSSchemaWrapper(&me.ntbEntry.schemaRow);
tDecoderClear(&dc);
taosMemoryFree(me.colCmpr.pColCmpr);
goto _exit;
}
}
tDecoderClear(&dc);
taosMemoryFree(me.colCmpr.pColCmpr);
// query from skm db
if (tdbTbGet(pMeta->pSkmDb, &(SSkmDbKey){.uid = uid, .sver = sver}, sizeof(SSkmDbKey), &pData, &nData) < 0) {
@ -408,7 +413,6 @@ _err:
return NULL;
}
SMCtbCursor *metaOpenCtbCursor(void *pVnode, tb_uid_t uid, int lock) {
SMeta *pMeta = ((SVnode *)pVnode)->pMeta;
SMCtbCursor *pCtbCur = NULL;

View File

@ -2562,6 +2562,7 @@ int32_t metaGetColCmpr(SMeta *pMeta, tb_uid_t uid, SHashObj **ppColCmprObj) {
return 0;
}
tDecoderClear(&dc);
taosMemoryFree(e.colCmpr.pColCmpr);
tdbFree(pData);
metaULock(pMeta);

View File

@ -127,6 +127,7 @@ _exit:
if (code) {
TSDB_ERROR_LOG(TD_VID(writer->config->tsdb->pVnode), lino, code);
}
taosHashCleanup(writer->pColCmprObj);
return code;
}