This commit is contained in:
Shengliang Guan 2022-03-16 19:07:42 +08:00
parent e10e8c8fec
commit 7ab2b0a8e0
4 changed files with 22 additions and 14 deletions

View File

@ -23,18 +23,19 @@ extern "C" {
#endif
typedef struct SDnodeMgmt {
int64_t dver;
int64_t updateTime;
int8_t statusSent;
SEpSet mnodeEpSet;
SHashObj *dnodeHash;
SArray *dnodeEps;
pthread_t *threadId;
SRWLatch latch;
SDnodeWorker mgmtWorker;
SDnodeWorker statusWorker;
const char *path;
SDnode *pDnode;
int64_t dver;
int64_t updateTime;
int8_t statusSent;
SEpSet mnodeEpSet;
SHashObj *dnodeHash;
SArray *dnodeEps;
pthread_t *threadId;
SRWLatch latch;
SDnodeWorker mgmtWorker;
SDnodeWorker statusWorker;
const char *path;
SDnode *pDnode;
SMgmtWrapper *pWrapper;
} SDnodeMgmt;
// dmFile.c

View File

@ -92,6 +92,7 @@ int32_t dmInit(SMgmtWrapper *pWrapper) {
pDnode->clusterId = 0;
pMgmt->path = pWrapper->path;
pMgmt->pDnode = pDnode;
pMgmt->pWrapper = pWrapper;
taosInitRWLatch(&pMgmt->latch);
pMgmt->dnodeHash = taosHashInit(4, taosGetDefaultHashFunction(TSDB_DATA_TYPE_INT), true, HASH_NO_LOCK);

View File

@ -53,7 +53,7 @@ void dmSendStatusReq(SDnodeMgmt *pMgmt) {
pMgmt->statusSent = 1;
dTrace("send req:%s to mnode, app:%p", TMSG_INFO(rpcMsg.msgType), rpcMsg.ahandle);
dndSendReqToMnode(pMgmt->pDnode, &rpcMsg);
dndSendReqToMnode(pMgmt->dnodeEps, &rpcMsg);
}
static void dmUpdateDnodeCfg(SDnodeMgmt *pMgmt, SDnodeCfg *pCfg) {

View File

@ -17,6 +17,7 @@
#include "vmFile.h"
#include "vmMsg.h"
#include "vmWorker.h"
#include "sync.h"
SVnodeObj *vmAcquireVnode(SVnodesMgmt *pMgmt, int32_t vgId) {
@ -317,6 +318,8 @@ static int32_t vmInit(SMgmtWrapper *pWrapper) {
return -1;
}
code = 0;
_OVER:
if (code == 0) {
pWrapper->pMgmt = pMgmt;
@ -329,7 +332,10 @@ _OVER:
return 0;
}
static bool vmRequire(SMgmtWrapper *pWrapper) { return false; }
static bool vmRequire(SMgmtWrapper *pWrapper) {
SDnode *pDnode = pWrapper->pDnode;
return pDnode->numOfSupportVnodes > 0;
}
void vmGetMgmtFp(SMgmtWrapper *pWrapper) {
SMgmtFp mgmtFp = {0};