REDESIGNED MP2 FOR MP3
This commit is contained in:
1 parent
0e75fdc050
commit
a666eae508
1 file changed
+27
-1
+27
-1
@@ -245,7 +245,33 @@ func (m *MembershipService) handle_failure_detection(ctx context.Context, socket
|
|||||||
case <-ctx.Done():
|
case <-ctx.Done():
|
||||||
return
|
return
|
||||||
case <-ticker.C:
|
case <-ticker.C:
|
||||||
// TODO: Implement failure detection logic
|
m.mutex.Lock()
|
||||||
|
now := time.Now()
|
||||||
|
|
||||||
|
for id, info := range m.members_list {
|
||||||
|
// Don't check ourselves or already failed nodes
|
||||||
|
if id == m.self_id || info.State == "down" {
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
|
||||||
|
if info.LocalLastSeen == nil {
|
||||||
|
info.LocalLastSeen = &now
|
||||||
|
m.members_list[id] = info
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
|
||||||
|
// No heartbeat advancement for 2.5 seconds
|
||||||
|
if now.Sub(*info.LocalLastSeen) > 2500*time.Millisecond {
|
||||||
|
info.State = "down"
|
||||||
|
info.LocalFailedSince = &now
|
||||||
|
|
||||||
|
m.members_list[id] = info
|
||||||
|
|
||||||
|
logger.Warn("Member marked DOWN", "member", id)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
m.mutex.Unlock()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in new issue
Block a user