Improve publish of domain events, see #2202
* Gossip is not exposed in user api * Better and more events * Snapshot event sent to new subscriber * Updated tests * Periodic publish only for internal stats
This commit is contained in:
parent
bc4d8fc7c5
commit
06f81f4373
21 changed files with 294 additions and 197 deletions
|
|
@ -80,13 +80,13 @@ abstract class UnreachableNodeRejoinsClusterSpec
|
|||
within(30 seconds) {
|
||||
// victim becomes all alone
|
||||
awaitCond({
|
||||
val gossip = cluster.latestGossip
|
||||
gossip.overview.unreachable.size == (roles.size - 1) &&
|
||||
gossip.members.size == 1 &&
|
||||
gossip.members.forall(_.status == MemberStatus.Up)
|
||||
val members = cluster.members
|
||||
cluster.unreachableMembers.size == (roles.size - 1) &&
|
||||
members.size == 1 &&
|
||||
members.forall(_.status == MemberStatus.Up)
|
||||
})
|
||||
cluster.latestGossip.overview.unreachable.map(_.address) must be((allButVictim map address).toSet)
|
||||
cluster.convergence.isDefined must be(false)
|
||||
cluster.unreachableMembers.map(_.address) must be((allButVictim map address).toSet)
|
||||
cluster.convergence must be(false)
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -95,17 +95,17 @@ abstract class UnreachableNodeRejoinsClusterSpec
|
|||
within(30 seconds) {
|
||||
// victim becomes unreachable
|
||||
awaitCond({
|
||||
val gossip = cluster.latestGossip
|
||||
gossip.overview.unreachable.size == 1 &&
|
||||
gossip.members.size == (roles.size - 1) &&
|
||||
gossip.members.forall(_.status == MemberStatus.Up)
|
||||
val members = cluster.members
|
||||
cluster.unreachableMembers.size == 1 &&
|
||||
members.size == (roles.size - 1) &&
|
||||
members.forall(_.status == MemberStatus.Up)
|
||||
})
|
||||
awaitSeenSameState(allButVictim map address: _*)
|
||||
// still one unreachable
|
||||
cluster.latestGossip.overview.unreachable.size must be(1)
|
||||
cluster.latestGossip.overview.unreachable.head.address must be(node(victim).address)
|
||||
cluster.unreachableMembers.size must be(1)
|
||||
cluster.unreachableMembers.head.address must be(node(victim).address)
|
||||
// and therefore no convergence
|
||||
cluster.convergence.isDefined must be(false)
|
||||
cluster.convergence must be(false)
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue