Move Cluster query methods to ClusterReadView, see #2202

* Better separation of concerns
* Internal API (could be made public if requested)
This commit is contained in:
Patrik Nordwall 2012-08-16 18:28:01 +02:00
parent 331cd7fca3
commit 4e2d7b0495
21 changed files with 257 additions and 211 deletions

View file

@ -80,13 +80,13 @@ abstract class UnreachableNodeRejoinsClusterSpec
within(30 seconds) {
// victim becomes all alone
awaitCond({
val members = cluster.members
cluster.unreachableMembers.size == (roles.size - 1) &&
val members = clusterView.members
clusterView.unreachableMembers.size == (roles.size - 1) &&
members.size == 1 &&
members.forall(_.status == MemberStatus.Up)
})
cluster.unreachableMembers.map(_.address) must be((allButVictim map address).toSet)
cluster.convergence must be(false)
clusterView.unreachableMembers.map(_.address) must be((allButVictim map address).toSet)
clusterView.convergence must be(false)
}
}
@ -95,17 +95,17 @@ abstract class UnreachableNodeRejoinsClusterSpec
within(30 seconds) {
// victim becomes unreachable
awaitCond({
val members = cluster.members
cluster.unreachableMembers.size == 1 &&
val members = clusterView.members
clusterView.unreachableMembers.size == 1 &&
members.size == (roles.size - 1) &&
members.forall(_.status == MemberStatus.Up)
})
awaitSeenSameState(allButVictim map address: _*)
// still one unreachable
cluster.unreachableMembers.size must be(1)
cluster.unreachableMembers.head.address must be(node(victim).address)
clusterView.unreachableMembers.size must be(1)
clusterView.unreachableMembers.head.address must be(node(victim).address)
// and therefore no convergence
cluster.convergence must be(false)
clusterView.convergence must be(false)
}
}