From 89143de5b7168a79f2de4ba1dbcfd6e05b2ce64a Mon Sep 17 00:00:00 2001 From: Cary Xu Date: Tue, 19 Oct 2021 17:39:47 +0800 Subject: [PATCH] grant check time --- src/mnode/src/mnodeDb.c | 2 -- src/mnode/src/mnodeDnode.c | 2 -- src/mnode/src/mnodeFunc.c | 2 -- src/mnode/src/mnodeTable.c | 4 +--- src/mnode/src/mnodeUser.c | 2 -- src/vnode/src/vnodeRead.c | 15 +++++---------- 6 files changed, 6 insertions(+), 21 deletions(-) diff --git a/src/mnode/src/mnodeDb.c b/src/mnode/src/mnodeDb.c index 3be81bad94..935caebabf 100644 --- a/src/mnode/src/mnodeDb.c +++ b/src/mnode/src/mnodeDb.c @@ -429,10 +429,8 @@ static int32_t mnodeCreateDb(SAcctObj *pAcct, SCreateDbMsg *pCreate, SMnodeMsg * } } -#ifdef GRANT_CHECK_WRITE code = grantCheck(TSDB_GRANT_DB); if (code != 0) return code; -#endif pDb = calloc(1, sizeof(SDbObj)); tstrncpy(pDb->name, pCreate->db, sizeof(pDb->name)); diff --git a/src/mnode/src/mnodeDnode.c b/src/mnode/src/mnodeDnode.c index e5ecec6e32..3bbd3b129c 100644 --- a/src/mnode/src/mnodeDnode.c +++ b/src/mnode/src/mnodeDnode.c @@ -663,12 +663,10 @@ static int32_t mnodeProcessDnodeStatusMsg(SMnodeMsg *pMsg) { } static int32_t mnodeCreateDnode(char *ep, SMnodeMsg *pMsg) { -#ifndef GRANT_CHECK_WRITE int32_t grantCode = grantCheck(TSDB_GRANT_DNODE); if (grantCode != TSDB_CODE_SUCCESS) { return grantCode; } -#endif char dnodeEp[TSDB_EP_LEN] = {0}; tstrncpy(dnodeEp, ep, TSDB_EP_LEN); strtrim(dnodeEp); diff --git a/src/mnode/src/mnodeFunc.c b/src/mnode/src/mnodeFunc.c index 7faf98bccc..1a8c65915b 100644 --- a/src/mnode/src/mnodeFunc.c +++ b/src/mnode/src/mnodeFunc.c @@ -205,12 +205,10 @@ int32_t mnodeCreateFunc(SAcctObj *pAcct, char *name, int32_t codeLen, char *code if (code != TSDB_CODE_SUCCESS) { return code; } -#ifdef GRANT_CHECK_WRITE code = grantCheck(TSDB_GRANT_USER); if (code != TSDB_CODE_SUCCESS) { return code; } -#endif if (name[0] == 0) { return TSDB_CODE_MND_INVALID_FUNC_NAME; } diff --git a/src/mnode/src/mnodeTable.c b/src/mnode/src/mnodeTable.c index 85f3ee191f..960dab6a5b 100644 --- a/src/mnode/src/mnodeTable.c +++ b/src/mnode/src/mnodeTable.c @@ -2216,20 +2216,18 @@ static int32_t mnodeProcessCreateChildTableMsg(SMnodeMsg *pMsg) { //SCMCreateTableMsg* p1 = pMsg->rpcMsg.pCont; // there are several tables here. SCreateTableMsg* pCreate = (SCreateTableMsg*)((char *)pMsg->rpcMsg.pCont + sizeof(SCMCreateTableMsg)); -#ifdef GRANT_CHECK_WRITE int32_t code = grantCheck(TSDB_GRANT_TIMESERIES); if (code != TSDB_CODE_SUCCESS) { mError("msg:%p, app:%p table:%s, failed to create, grant timeseries failed", pMsg, pMsg->rpcMsg.ahandle, pCreate->tableName); return code; } -#endif if (pMsg->retry == 0) { if (pMsg->pTable == NULL) { SVgObj *pVgroup = NULL; int32_t tid = 0; - int32_t code = mnodeGetAvailableVgroup(pMsg, &pVgroup, &tid); + code = mnodeGetAvailableVgroup(pMsg, &pVgroup, &tid); if (code != TSDB_CODE_SUCCESS) { mDebug("msg:%p, app:%p table:%s, failed to get available vgroup, reason:%s", pMsg, pMsg->rpcMsg.ahandle, pCreate->tableName, tstrerror(code)); diff --git a/src/mnode/src/mnodeUser.c b/src/mnode/src/mnodeUser.c index 9e06a4bef3..2bd35aafa8 100644 --- a/src/mnode/src/mnodeUser.c +++ b/src/mnode/src/mnodeUser.c @@ -250,12 +250,10 @@ int32_t mnodeCreateUser(SAcctObj *pAcct, char *name, char *pass, void *pMsg) { return TSDB_CODE_MND_USER_ALREADY_EXIST; } -#ifdef GRANT_CHECK_WRITE code = grantCheck(TSDB_GRANT_USER); if (code != TSDB_CODE_SUCCESS) { return code; } -#endif pUser = calloc(1, sizeof(SUserObj)); tstrncpy(pUser->user, name, TSDB_USER_LEN); diff --git a/src/vnode/src/vnodeRead.c b/src/vnode/src/vnodeRead.c index 291c7d7ea4..e8495cac6d 100644 --- a/src/vnode/src/vnodeRead.c +++ b/src/vnode/src/vnodeRead.c @@ -56,6 +56,11 @@ int32_t vnodeProcessRead(void *vparam, SVReadMsg *pRead) { } static int32_t vnodeCheckRead(SVnodeObj *pVnode) { + if (grantCheck(TSDB_GRANT_TIME) != TSDB_CODE_SUCCESS) { + vDebug("vgId:%d, grant expired, refCount:%d pVnode:%p", pVnode->vgId, pVnode->refCount, pVnode); + return TSDB_CODE_GRANT_EXPIRED; + } + if (!vnodeInReadyStatus(pVnode)) { vDebug("vgId:%d, vnode status is %s, refCount:%d pVnode:%p", pVnode->vgId, vnodeStatus[pVnode->status], pVnode->refCount, pVnode); @@ -228,16 +233,6 @@ static int32_t vnodeProcessQueryMsg(SVnodeObj *pVnode, SVReadMsg *pRead) { vError("error rpc msg in query, %s", tstrerror(pRead->code)); } - if (grantCheck(TSDB_GRANT_TIME) != TSDB_CODE_SUCCESS) { - SQueryTableRsp *pRsp = (SQueryTableRsp *)rpcMallocCont(sizeof(SQueryTableRsp)); - pRsp->code = TSDB_CODE_GRANT_EXPIRED; - pRsp->qId = 0; - - pRet->len = sizeof(SQueryTableRsp); - pRet->rsp = pRsp; - return pRsp->code; - } - int32_t code = TSDB_CODE_SUCCESS; void ** handle = NULL; -- GitLab