enh: ensure decoded obj cleared in new obj action validate
This commit is contained in:
parent
1b2bccd1d9
commit
ec093cb477
|
@ -259,11 +259,12 @@ _OVER:
|
||||||
static int32_t mndNewDbActionValidate(SMnode *pMnode, STrans *pTrans, SSdbRaw *pRaw) {
|
static int32_t mndNewDbActionValidate(SMnode *pMnode, STrans *pTrans, SSdbRaw *pRaw) {
|
||||||
SSdb *pSdb = pMnode->pSdb;
|
SSdb *pSdb = pMnode->pSdb;
|
||||||
SSdbRow *pRow = NULL;
|
SSdbRow *pRow = NULL;
|
||||||
|
SDbObj *pNewDb = NULL;
|
||||||
int code = -1;
|
int code = -1;
|
||||||
|
|
||||||
pRow = mndDbActionDecode(pRaw);
|
pRow = mndDbActionDecode(pRaw);
|
||||||
if (pRow == NULL) goto _OVER;
|
if (pRow == NULL) goto _OVER;
|
||||||
SDbObj *pNewDb = sdbGetRowObj(pRow);
|
pNewDb = sdbGetRowObj(pRow);
|
||||||
if (pNewDb == NULL) goto _OVER;
|
if (pNewDb == NULL) goto _OVER;
|
||||||
|
|
||||||
SDbObj *pOldDb = sdbAcquire(pMnode->pSdb, SDB_DB, pNewDb->name);
|
SDbObj *pOldDb = sdbAcquire(pMnode->pSdb, SDB_DB, pNewDb->name);
|
||||||
|
@ -275,7 +276,8 @@ static int32_t mndNewDbActionValidate(SMnode *pMnode, STrans *pTrans, SSdbRaw *p
|
||||||
|
|
||||||
code = 0;
|
code = 0;
|
||||||
_OVER:
|
_OVER:
|
||||||
taosMemoryFree(pRow);
|
if (pNewDb) mndDbActionDelete(pSdb, pNewDb);
|
||||||
|
taosMemoryFreeClear(pRow);
|
||||||
return code;
|
return code;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -184,11 +184,12 @@ _OVER:
|
||||||
static int32_t mndNewVgActionValidate(SMnode *pMnode, STrans *pTrans, SSdbRaw *pRaw) {
|
static int32_t mndNewVgActionValidate(SMnode *pMnode, STrans *pTrans, SSdbRaw *pRaw) {
|
||||||
SSdb *pSdb = pMnode->pSdb;
|
SSdb *pSdb = pMnode->pSdb;
|
||||||
SSdbRow *pRow = NULL;
|
SSdbRow *pRow = NULL;
|
||||||
|
SVgObj *pVgroup = NULL;
|
||||||
int code = -1;
|
int code = -1;
|
||||||
|
|
||||||
pRow = mndVgroupActionDecode(pRaw);
|
pRow = mndVgroupActionDecode(pRaw);
|
||||||
if (pRow == NULL) goto _OVER;
|
if (pRow == NULL) goto _OVER;
|
||||||
SVgObj *pVgroup = sdbGetRowObj(pRow);
|
pVgroup = sdbGetRowObj(pRow);
|
||||||
if (pVgroup == NULL) goto _OVER;
|
if (pVgroup == NULL) goto _OVER;
|
||||||
|
|
||||||
int32_t maxVgId = sdbGetMaxId(pMnode->pSdb, SDB_VGROUP);
|
int32_t maxVgId = sdbGetMaxId(pMnode->pSdb, SDB_VGROUP);
|
||||||
|
@ -199,7 +200,8 @@ static int32_t mndNewVgActionValidate(SMnode *pMnode, STrans *pTrans, SSdbRaw *p
|
||||||
|
|
||||||
code = 0;
|
code = 0;
|
||||||
_OVER:
|
_OVER:
|
||||||
taosMemoryFree(pRow);
|
if (pVgroup) mndVgroupActionDelete(pSdb, pVgroup);
|
||||||
|
taosMemoryFreeClear(pRow);
|
||||||
return code;
|
return code;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue