TD-1725
This commit is contained in:
parent
d0935c02f6
commit
b1cc403da1
|
@ -126,6 +126,8 @@ int32_t balanceAllocVnodes(SVgObj *pVgroup) {
|
||||||
|
|
||||||
balanceAccquireDnodeList();
|
balanceAccquireDnodeList();
|
||||||
|
|
||||||
|
mDebug("db:%s, alloc %d vnodes to vgroup, dnodes total:%d, avail:%d", pVgroup->dbName, pVgroup->numOfVnodes,
|
||||||
|
mnodeGetDnodesNum(), tsBalanceDnodeListSize);
|
||||||
for (int32_t i = 0; i < pVgroup->numOfVnodes; ++i) {
|
for (int32_t i = 0; i < pVgroup->numOfVnodes; ++i) {
|
||||||
for (; dnode < tsBalanceDnodeListSize; ++dnode) {
|
for (; dnode < tsBalanceDnodeListSize; ++dnode) {
|
||||||
SDnodeObj *pDnode = tsBalanceDnodeList[dnode];
|
SDnodeObj *pDnode = tsBalanceDnodeList[dnode];
|
||||||
|
@ -135,17 +137,33 @@ int32_t balanceAllocVnodes(SVgObj *pVgroup) {
|
||||||
pVnodeGid->pDnode = pDnode;
|
pVnodeGid->pDnode = pDnode;
|
||||||
dnode++;
|
dnode++;
|
||||||
vnodes++;
|
vnodes++;
|
||||||
|
mDebug("dnode:%d, is selected, vnodeIndex:%d", pDnode->dnodeId, i);
|
||||||
break;
|
break;
|
||||||
|
} else {
|
||||||
|
mDebug("dnode:%d, is not selected, status:%s vnodes:%d disk:%fGB role:%d", pDnode->dnodeId,
|
||||||
|
mnodeGetDnodeStatusStr(pDnode->status), pDnode->openVnodes, pDnode->diskAvailable,
|
||||||
|
pDnode->alternativeRole);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (vnodes != pVgroup->numOfVnodes) {
|
if (vnodes != pVgroup->numOfVnodes) {
|
||||||
mDebug("vgId:%d, db:%s need vnodes:%d, but alloc:%d, free them", pVgroup->vgId, pVgroup->dbName,
|
|
||||||
pVgroup->numOfVnodes, vnodes);
|
|
||||||
balanceReleaseDnodeList();
|
balanceReleaseDnodeList();
|
||||||
balanceUnLock();
|
balanceUnLock();
|
||||||
|
|
||||||
|
mDebug("db:%s, need vnodes:%d, but alloc:%d", pVgroup->dbName, pVgroup->numOfVnodes, vnodes);
|
||||||
|
|
||||||
|
void * pIter = NULL;
|
||||||
|
SDnodeObj *pDnode = NULL;
|
||||||
|
while (1) {
|
||||||
|
pIter = mnodeGetNextDnode(pIter, &pDnode);
|
||||||
|
if (pDnode == NULL) break;
|
||||||
|
mDebug("dnode:%d, status:%s vnodes:%d disk:%fGB role:%d", pDnode->dnodeId, mnodeGetDnodeStatusStr(pDnode->status),
|
||||||
|
pDnode->openVnodes, pDnode->diskAvailable, pDnode->alternativeRole);
|
||||||
|
mnodeDecDnodeRef(pDnode);
|
||||||
|
}
|
||||||
|
sdbFreeIter(pIter);
|
||||||
|
|
||||||
if (mnodeGetOnlineDnodesNum() == 0) {
|
if (mnodeGetOnlineDnodesNum() == 0) {
|
||||||
return TSDB_CODE_MND_NOT_READY;
|
return TSDB_CODE_MND_NOT_READY;
|
||||||
} else {
|
} else {
|
||||||
|
|
Loading…
Reference in New Issue