Search in sources :

Example 6 with Member

use of akka.cluster.Member in project controller by opendaylight.

the class MockClusterWrapper method createUnreachableMember.

public static UnreachableMember createUnreachableMember(final String memberName, final String address) {
    UniqueAddress uniqueAddress = new UniqueAddress(AddressFromURIString.parse(address), 55L);
    Member member = new Member(uniqueAddress, 1, MemberStatus.up(), setOf(memberName));
    return new UnreachableMember(member);
}
Also used : UnreachableMember(akka.cluster.ClusterEvent.UnreachableMember) ReachableMember(akka.cluster.ClusterEvent.ReachableMember) UnreachableMember(akka.cluster.ClusterEvent.UnreachableMember) Member(akka.cluster.Member) UniqueAddress(akka.cluster.UniqueAddress)

Example 7 with Member

use of akka.cluster.Member in project controller by opendaylight.

the class EntityOwnershipShard method initializeDownPeerMemberNamesFromClusterState.

private void initializeDownPeerMemberNamesFromClusterState() {
    java.util.Optional<Cluster> cluster = getRaftActorContext().getCluster();
    if (!cluster.isPresent()) {
        return;
    }
    CurrentClusterState state = cluster.get().state();
    Set<Member> unreachable = state.getUnreachable();
    LOG.debug("{}: initializeDownPeerMemberNamesFromClusterState - current downPeerMemberNames: {}, unreachable: {}", persistenceId(), downPeerMemberNames, unreachable);
    downPeerMemberNames.clear();
    for (Member m : unreachable) {
        downPeerMemberNames.add(MemberName.forName(m.getRoles().iterator().next()));
    }
    for (Member m : state.getMembers()) {
        if (m.status() != MemberStatus.up() && m.status() != MemberStatus.weaklyUp()) {
            LOG.debug("{}: Adding down member with status {}", persistenceId(), m.status());
            downPeerMemberNames.add(MemberName.forName(m.getRoles().iterator().next()));
        }
    }
    LOG.debug("{}: new downPeerMemberNames: {}", persistenceId(), downPeerMemberNames);
}
Also used : CurrentClusterState(akka.cluster.ClusterEvent.CurrentClusterState) Cluster(akka.cluster.Cluster) Member(akka.cluster.Member)

Example 8 with Member

use of akka.cluster.Member in project controller by opendaylight.

the class MemberNode method waitForMemberDown.

public void waitForMemberDown(final String member) {
    Stopwatch sw = Stopwatch.createStarted();
    while (sw.elapsed(TimeUnit.SECONDS) <= 10) {
        CurrentClusterState state = Cluster.get(kit.getSystem()).state();
        for (Member m : state.getUnreachable()) {
            if (member.equals(m.getRoles().iterator().next())) {
                return;
            }
        }
        for (Member m : state.getMembers()) {
            if (m.status() != MemberStatus.up() && member.equals(m.getRoles().iterator().next())) {
                return;
            }
        }
        Uninterruptibles.sleepUninterruptibly(100, TimeUnit.MILLISECONDS);
    }
    fail("Member " + member + " is now down");
}
Also used : CurrentClusterState(akka.cluster.ClusterEvent.CurrentClusterState) Stopwatch(com.google.common.base.Stopwatch) Member(akka.cluster.Member)

Example 9 with Member

use of akka.cluster.Member in project controller by opendaylight.

the class RpcRegistryTest method waitForMembersUp.

static void waitForMembersUp(final ActorSystem node, final UniqueAddress... addresses) {
    Set<UniqueAddress> otherMembersSet = Sets.newHashSet(addresses);
    Stopwatch sw = Stopwatch.createStarted();
    while (sw.elapsed(TimeUnit.SECONDS) <= 10) {
        CurrentClusterState state = Cluster.get(node).state();
        for (Member m : state.getMembers()) {
            if (m.status() == MemberStatus.up() && otherMembersSet.remove(m.uniqueAddress()) && otherMembersSet.isEmpty()) {
                return;
            }
        }
        Uninterruptibles.sleepUninterruptibly(100, TimeUnit.MILLISECONDS);
    }
    fail("Member(s) " + otherMembersSet + " are not Up");
}
Also used : CurrentClusterState(akka.cluster.ClusterEvent.CurrentClusterState) Stopwatch(com.google.common.base.Stopwatch) Member(akka.cluster.Member) UniqueAddress(akka.cluster.UniqueAddress)

Aggregations

Member (akka.cluster.Member)9 CurrentClusterState (akka.cluster.ClusterEvent.CurrentClusterState)5 UniqueAddress (akka.cluster.UniqueAddress)5 ReachableMember (akka.cluster.ClusterEvent.ReachableMember)4 UnreachableMember (akka.cluster.ClusterEvent.UnreachableMember)4 Stopwatch (com.google.common.base.Stopwatch)3 Cluster (akka.cluster.Cluster)2 ActorSelection (akka.actor.ActorSelection)1 Address (akka.actor.Address)1 MemberRemoved (akka.cluster.ClusterEvent.MemberRemoved)1 MemberUp (akka.cluster.ClusterEvent.MemberUp)1