Transition from Down to Removed, see #3075

This commit is contained in:
Patrik Nordwall 2013-03-05 15:32:13 +01:00
parent c3c904761f
commit 5c7747e7fa
10 changed files with 52 additions and 72 deletions

View file

@ -84,11 +84,13 @@ abstract class LeaderElectionSpec(multiNodeConfig: LeaderElectionMultiNodeConfig
// detect failure
markNodeAsUnavailable(leaderAddress)
awaitCond(clusterView.unreachableMembers.exists(m m.address == leaderAddress))
awaitCond(clusterView.unreachableMembers.exists(_.address == leaderAddress))
enterBarrier("after-unavailable" + n)
// user marks the shutdown leader as DOWN
cluster.down(leaderAddress)
// removed
awaitCond(clusterView.unreachableMembers.forall(_.address != leaderAddress))
enterBarrier("after-down" + n, "completed" + n)
case _ if remainingRoles.contains(myself)
@ -96,7 +98,7 @@ abstract class LeaderElectionSpec(multiNodeConfig: LeaderElectionMultiNodeConfig
val leaderAddress = address(leader)
enterBarrier("before-shutdown" + n, "after-shutdown" + n)
awaitCond(clusterView.unreachableMembers.exists(m m.address == leaderAddress))
awaitCond(clusterView.unreachableMembers.exists(_.address == leaderAddress))
enterBarrier("after-unavailable" + n)
enterBarrier("after-down" + n)