From 3949f88b085f1f8be65a35fe94050533da8f13bb Mon Sep 17 00:00:00 2001 From: Shengliang Guan Date: Mon, 20 Dec 2021 20:30:55 +0800 Subject: [PATCH] minor changes --- include/util/taoserror.h | 4 ++++ source/dnode/mnode/impl/src/mndMnode.c | 8 ++++++-- source/dnode/mnode/impl/src/mndStb.c | 14 +++++++++----- source/dnode/mnode/impl/src/mndTrans.c | 8 ++++++-- source/dnode/mnode/impl/src/mndUser.c | 8 ++++++-- source/util/src/terror.c | 4 ++++ 6 files changed, 35 insertions(+), 11 deletions(-) diff --git a/include/util/taoserror.h b/include/util/taoserror.h index 95824df5ac..7e8df3add2 100644 --- a/include/util/taoserror.h +++ b/include/util/taoserror.h @@ -230,6 +230,10 @@ int32_t* taosGetErrno(); #define TSDB_CODE_MND_INVALID_FUNC_CODE TAOS_DEF_ERROR_CODE(0, 0x03C5) #define TSDB_CODE_MND_INVALID_FUNC_BUFSIZE TAOS_DEF_ERROR_CODE(0, 0x03C6) +// mnode-trans +#define TSDB_CODE_MND_TRANS_ALREADY_EXIST TAOS_DEF_ERROR_CODE(0, 0x03D0) +#define TSDB_CODE_MND_TRANS_NOT_EXIST TAOS_DEF_ERROR_CODE(0, 0x03D1) + // dnode #define TSDB_CODE_DND_ACTION_IN_PROGRESS TAOS_DEF_ERROR_CODE(0, 0x0400) #define TSDB_CODE_DND_EXITING TAOS_DEF_ERROR_CODE(0, 0x0401) diff --git a/source/dnode/mnode/impl/src/mndMnode.c b/source/dnode/mnode/impl/src/mndMnode.c index 05c02ceac6..9331a0696a 100644 --- a/source/dnode/mnode/impl/src/mndMnode.c +++ b/source/dnode/mnode/impl/src/mndMnode.c @@ -61,8 +61,12 @@ int32_t mndInitMnode(SMnode *pMnode) { void mndCleanupMnode(SMnode *pMnode) {} static SMnodeObj *mndAcquireMnode(SMnode *pMnode, int32_t mnodeId) { - SSdb *pSdb = pMnode->pSdb; - return sdbAcquire(pSdb, SDB_MNODE, &mnodeId); + SSdb *pSdb = pMnode->pSdb; + SMnodeObj *pObj = sdbAcquire(pSdb, SDB_MNODE, &mnodeId); + if (pObj == NULL) { + terrno = TSDB_CODE_MND_MNODE_NOT_EXIST; + } + return pObj; } static void mndReleaseMnode(SMnode *pMnode, SMnodeObj *pMnodeObj) { diff --git a/source/dnode/mnode/impl/src/mndStb.c b/source/dnode/mnode/impl/src/mndStb.c index 822036b599..61a6cf7833 100644 --- a/source/dnode/mnode/impl/src/mndStb.c +++ b/source/dnode/mnode/impl/src/mndStb.c @@ -23,7 +23,7 @@ #include "mndUser.h" #include "tname.h" -#define TSDB_STB_VER_NUM 1 +#define TSDB_STB_VER_NUMBER 1 #define TSDB_STB_RESERVE_SIZE 64 static SSdbRaw *mndStbActionEncode(SStbObj *pStb); @@ -70,7 +70,7 @@ void mndCleanupStb(SMnode *pMnode) {} static SSdbRaw *mndStbActionEncode(SStbObj *pStb) { int32_t size = sizeof(SStbObj) + (pStb->numOfColumns + pStb->numOfTags) * sizeof(SSchema) + TSDB_STB_RESERVE_SIZE; - SSdbRaw *pRaw = sdbAllocRaw(SDB_STB, TSDB_STB_VER_NUM, size); + SSdbRaw *pRaw = sdbAllocRaw(SDB_STB, TSDB_STB_VER_NUMBER, size); if (pRaw == NULL) return NULL; int32_t dataPos = 0; @@ -103,7 +103,7 @@ static SSdbRow *mndStbActionDecode(SSdbRaw *pRaw) { int8_t sver = 0; if (sdbGetRawSoftVer(pRaw, &sver) != 0) return NULL; - if (sver != TSDB_STB_VER_NUM) { + if (sver != TSDB_STB_VER_NUMBER) { mError("failed to decode stable since %s", terrstr()); terrno = TSDB_CODE_SDB_INVALID_DATA_VER; return NULL; @@ -176,8 +176,12 @@ static int32_t mndStbActionUpdate(SSdb *pSdb, SStbObj *pOldStb, SStbObj *pNewStb } SStbObj *mndAcquireStb(SMnode *pMnode, char *stbName) { - SSdb *pSdb = pMnode->pSdb; - return sdbAcquire(pSdb, SDB_STB, stbName); + SSdb *pSdb = pMnode->pSdb; + SStbObj *pStb = sdbAcquire(pSdb, SDB_STB, stbName); + if (pStb == NULL) { + terrno = TSDB_CODE_MND_STB_NOT_EXIST; + } + return pStb; } void mndReleaseStb(SMnode *pMnode, SStbObj *pStb) { diff --git a/source/dnode/mnode/impl/src/mndTrans.c b/source/dnode/mnode/impl/src/mndTrans.c index c31a8c5b7d..b84ee5ec77 100644 --- a/source/dnode/mnode/impl/src/mndTrans.c +++ b/source/dnode/mnode/impl/src/mndTrans.c @@ -317,8 +317,12 @@ static int32_t mndTransActionUpdate(SSdb *pSdb, STrans *pOldTrans, STrans *pNewT } STrans *mndAcquireTrans(SMnode *pMnode, int32_t transId) { - SSdb *pSdb = pMnode->pSdb; - return sdbAcquire(pSdb, SDB_TRANS, &transId); + SSdb *pSdb = pMnode->pSdb; + STrans *pTrans = sdbAcquire(pSdb, SDB_TRANS, &transId); + if (pTrans == NULL) { + terrno = TSDB_CODE_MND_TRANS_NOT_EXIST; + } + return pTrans; } void mndReleaseTrans(SMnode *pMnode, STrans *pTrans) { diff --git a/source/dnode/mnode/impl/src/mndUser.c b/source/dnode/mnode/impl/src/mndUser.c index eabf2df958..c96e6a80db 100644 --- a/source/dnode/mnode/impl/src/mndUser.c +++ b/source/dnode/mnode/impl/src/mndUser.c @@ -175,8 +175,12 @@ static int32_t mndUserActionUpdate(SSdb *pSdb, SUserObj *pOldUser, SUserObj *pNe } SUserObj *mndAcquireUser(SMnode *pMnode, char *userName) { - SSdb *pSdb = pMnode->pSdb; - return sdbAcquire(pSdb, SDB_USER, userName); + SSdb *pSdb = pMnode->pSdb; + SUserObj *pUser = sdbAcquire(pSdb, SDB_USER, userName); + if (pUser == NULL) { + terrno = TSDB_CODE_MND_DB_NOT_EXIST; + } + return pUser; } void mndReleaseUser(SMnode *pMnode, SUserObj *pUser) { diff --git a/source/util/src/terror.c b/source/util/src/terror.c index ffc59c5d69..43ac760643 100644 --- a/source/util/src/terror.c +++ b/source/util/src/terror.c @@ -240,6 +240,10 @@ TAOS_DEFINE_ERROR(TSDB_CODE_MND_INVALID_FUNC_COMMENT, "Invalid func comment" TAOS_DEFINE_ERROR(TSDB_CODE_MND_INVALID_FUNC_CODE, "Invalid func code") TAOS_DEFINE_ERROR(TSDB_CODE_MND_INVALID_FUNC_BUFSIZE, "Invalid func bufSize") +// mnode-trans +TAOS_DEFINE_ERROR(TSDB_CODE_MND_TRANS_ALREADY_EXIST, "Transaction already exists") +TAOS_DEFINE_ERROR(TSDB_CODE_MND_TRANS_NOT_EXIST, "Transaction not exists") + // dnode TAOS_DEFINE_ERROR(TSDB_CODE_DND_ACTION_IN_PROGRESS, "Action in progress") TAOS_DEFINE_ERROR(TSDB_CODE_DND_EXITING, "Dnode is exiting") -- GitLab