修改UpdateAllNodeHeartBeat,每次根据节点数读取共享盘
This commit is contained in:
parent
a85c7016ff
commit
e8e7c38591
@ -112,14 +112,14 @@ status_t SetVotingDiskNodeData(char *data, uint32 dataLen)
|
||||
return CM_SUCCESS;
|
||||
}
|
||||
|
||||
status_t UpdateAllNodeHeartBeat()
|
||||
status_t UpdateAllNodeHeartBeat(uint32 nodeNum)
|
||||
{
|
||||
uint32 dataLen = VOTING_DISK_DATA_SIZE;
|
||||
uint32 dataLen = nodeNum * VOTING_DISK_EACH_NODE_OFFSET;
|
||||
if (GetVotingDiskNodeData(g_nodeDataBuff, dataLen) != CM_SUCCESS) {
|
||||
write_runlog(ERROR, "[%s] get voting disk node data failed.\n", __FUNCTION__);
|
||||
return CM_ERROR;
|
||||
}
|
||||
for (uint32 i = 0; i < VOTING_DISK_MAX_NODE_NUM; i++) {
|
||||
for (uint32 i = 0; i < nodeNum; i++) {
|
||||
uint32 offset = i * VOTING_DISK_EACH_NODE_OFFSET;
|
||||
VotingDiskNodeInfo *nodeInfo = (VotingDiskNodeInfo*)(g_nodeDataBuff + offset);
|
||||
if (nodeInfo->nodeTime == 0) {
|
||||
|
@ -1005,7 +1005,7 @@ static status_t CheckVotingDisk()
|
||||
const uint32 timeout = 6;
|
||||
uint32 time = timeout;
|
||||
while (time > 0) {
|
||||
if (UpdateAllNodeHeartBeat() == CM_SUCCESS) {
|
||||
if (UpdateAllNodeHeartBeat(g_node_num) == CM_SUCCESS) {
|
||||
return CM_SUCCESS;
|
||||
}
|
||||
time--;
|
||||
|
@ -42,7 +42,7 @@ status_t GetVotingDiskData(char *data, uint32 dataLen, uint32 offset);
|
||||
status_t GetVotingDiskSingleNodeInfo(VotingDiskNodeInfo *nodeInfo, uint32 nodeIndex);
|
||||
status_t InitVotingDiskHandler(const char *scsiDev, uint32 offset);
|
||||
status_t InitVotingDisk(const char *votingDiskPath);
|
||||
status_t UpdateAllNodeHeartBeat();
|
||||
status_t UpdateAllNodeHeartBeat(uint32 nodeNum);
|
||||
void ResetVotingdiskHeartBeat();
|
||||
VotingDiskStatus GetNodeHeartbeatStat(uint32 nodeIndex, uint32 diskTimeout, int logLevel);
|
||||
status_t AllocVotingDiskMem();
|
||||
|
Loading…
x
Reference in New Issue
Block a user