check 2 mnode
This commit is contained in:
parent
cec27609c2
commit
565c930f77
|
@ -406,6 +406,7 @@ int32_t* taosGetErrno();
|
|||
#define TSDB_CODE_SNODE_NOT_DEPLOYED TAOS_DEF_ERROR_CODE(0, 0x0411)
|
||||
#define TSDB_CODE_MNODE_NOT_CATCH_UP TAOS_DEF_ERROR_CODE(0, 0x0412) // internal
|
||||
#define TSDB_CODE_MNODE_ALREADY_IS_VOTER TAOS_DEF_ERROR_CODE(0, 0x0413) // internal
|
||||
#define TSDB_CODE_MNODE_ONLY_TWO_MNODE TAOS_DEF_ERROR_CODE(0, 0x0414) // internal
|
||||
|
||||
// vnode
|
||||
// #define TSDB_CODE_VND_ACTION_IN_PROGRESS TAOS_DEF_ERROR_CODE(0, 0x0500) // 2.x
|
||||
|
|
|
@ -612,6 +612,13 @@ static int32_t mndRestoreDnode(SMnode *pMnode, SRpcMsg *pReq, SDnodeObj *pDnode,
|
|||
|
||||
if(restoreType == RESTORE_TYPE__ALL || restoreType == RESTORE_TYPE__MNODE)
|
||||
{
|
||||
int32_t totalMnodes = sdbGetSize(pMnode->pSdb, SDB_MNODE);
|
||||
if (totalMnodes == 2) {
|
||||
mError("cant't restore mnode, since a mnode on it and replica is 2");
|
||||
terrno = TSDB_CODE_MNODE_ONLY_TWO_MNODE;
|
||||
return -1;
|
||||
}
|
||||
|
||||
SMnodeObj *mnodeObj = mndAcquireMnode(pMnode, pDnode->id);
|
||||
if(mnodeObj == NULL){
|
||||
mError("trans:%d, no mnode exist on dnode:%s", pTrans->id, pDnode->ep);
|
||||
|
|
|
@ -320,6 +320,9 @@ TAOS_DEFINE_ERROR(TSDB_CODE_QNODE_NOT_DEPLOYED, "Qnode not deployed")
|
|||
TAOS_DEFINE_ERROR(TSDB_CODE_SNODE_NOT_FOUND, "Snode not found")
|
||||
TAOS_DEFINE_ERROR(TSDB_CODE_SNODE_ALREADY_DEPLOYED, "Snode already deployed")
|
||||
TAOS_DEFINE_ERROR(TSDB_CODE_SNODE_NOT_DEPLOYED, "Snode not deployed")
|
||||
TAOS_DEFINE_ERROR(TSDB_CODE_MNODE_NOT_CATCH_UP, "Mnode didn't catch the leader")
|
||||
TAOS_DEFINE_ERROR(TSDB_CODE_MNODE_ALREADY_IS_VOTER, "Mnode already is a leader")
|
||||
TAOS_DEFINE_ERROR(TSDB_CODE_MNODE_ONLY_TWO_MNODE, "Only two mnodes exist")
|
||||
|
||||
// vnode
|
||||
TAOS_DEFINE_ERROR(TSDB_CODE_VND_INVALID_VGROUP_ID, "Vnode is closed or removed")
|
||||
|
|
Loading…
Reference in New Issue