UnreachabilitySettings

public enum UnreachabilitySettings

Configure how unreachability should be handled by this instance.

  • Do not use the .unreachable state and just like classic SWIM automatically announce a node as .dead, if failure detection triggers.

    Warning: DO NOT run clusters with mixed reachability settings. In mixed deployments having a single node not understand unreachability will result in it promoting an incoming .unreachable status to .dead and continue spreading this information.

    This can defeat the purpose of unreachability, as it can be used to wait to announce the final `.dead`,
    move after consulting an external participant, and with a node unaware of unreachability this would short circut
    

    this “wait for decision”.

    Declaration

    Swift

    case disabled
  • Enables the .unreachable status extension. Most deployments will not need to utilize this mode.

    Reachability changes are emitted as SWIM.MemberStatusChangedEvent and allow an external participant to decide the final confirmDead which should be invoked on the swim instance when decided.

    For other intents and purposes, unreachable is operationally equivalent to a suspect node, in that it MAY return to being alive again.

    Declaration

    Swift

    case enabled