Example #1
0
 private void TriggerFirstHeart(UniqueAddress from)
 {
     if (_state.ActiveReceivers.Contains(from) && !FailureDetector.IsMonitoring(from.Address))
     {
         Log.Debug("Cluster Node [{0}] - Trigger extra expected heartbeat from [{1}]", _cluster.SelfAddress, from.Address);
         FailureDetector.Heartbeat(from.Address);
     }
 }
Example #2
0
 /// <summary>
 /// TBD
 /// </summary>
 /// <param name="from">TBD</param>
 /// <returns>TBD</returns>
 public ClusterHeartbeatSenderState HeartbeatRsp(UniqueAddress from)
 {
     if (ActiveReceivers.Contains(from))
     {
         FailureDetector.Heartbeat(from.Address);
         if (OldReceiversNowUnreachable.Contains(from))
         {
             //back from unreachable, ok to stop heartbeating to it
             if (!Ring.MyReceivers.Value.Contains(from))
             {
                 FailureDetector.Remove(from.Address);
             }
             return(Copy(oldReceiversNowUnreachable: OldReceiversNowUnreachable.Remove(from)));
         }
         return(this);
     }
     return(this);
 }