We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see ourdocumentation.
There was an error while loading.Please reload this page.
1 parente2d104e commita546266Copy full SHA for a546266
state.c
@@ -95,6 +95,7 @@ MtmCheckState(void)
95
/* ANY -> MTM_IN_MINORITY */
96
if (nConnected<Mtm->nAllNodes/2+1)
97
{
98
+BIT_SET(Mtm->disabledNodeMask,MtmNodeId-1);
99
MtmSetClusterStatus(MTM_IN_MINORITY);
100
return;
101
}
@@ -119,7 +120,7 @@ MtmCheckState(void)
119
120
break;
121
122
caseMTM_RECOVERED:
-if (nReceivers==nEnabled-1&&nSenders==nEnabled-1)
123
+if (nReceivers==nEnabled-1&&nSenders==nEnabled-1&&nEnabled==nConnected)
124
125
MtmSetClusterStatus(MTM_ONLINE);
126
@@ -250,7 +251,9 @@ void MtmDisableNode(int nodeId)
250
251
252
if (Mtm->nLiveNodes >=Mtm->nAllNodes/2+1) {
253
/* Make decision about prepared transaction status only in quorum */
254
+MtmLock(LW_EXCLUSIVE);
255
MtmPollStatusOfPreparedTransactionsForDisabledNode(nodeId);
256
+MtmUnlock();
257
258
259