Transition from Down to Removed, see #3075
This commit is contained in:
parent
c3c904761f
commit
5c7747e7fa
10 changed files with 52 additions and 72 deletions
|
|
@ -282,9 +282,9 @@ object ClusterEvent {
|
|||
}
|
||||
val unreachableDownedEvents = unreachableDownMembers map MemberDowned
|
||||
|
||||
val removedEvents = (oldGossip.members -- newGossip.members -- newGossip.overview.unreachable) map { m ⇒
|
||||
MemberRemoved(m.copy(status = Removed))
|
||||
}
|
||||
val removedMembers = (oldGossip.members -- newGossip.members -- newGossip.overview.unreachable) ++
|
||||
(oldGossip.overview.unreachable -- newGossip.overview.unreachable)
|
||||
val removedEvents = removedMembers.map(m ⇒ MemberRemoved(m.copy(status = Removed)))
|
||||
|
||||
(new VectorBuilder[MemberEvent]() ++= memberEvents ++= downedEvents ++= unreachableDownedEvents
|
||||
++= removedEvents).result()
|
||||
|
|
@ -413,9 +413,7 @@ private[cluster] final class ClusterDomainEventPublisher extends Actor with Acto
|
|||
latestConvergedGossip = newGossip
|
||||
bufferedEvents foreach { event ⇒
|
||||
event match {
|
||||
case m: MemberEvent if m.isInstanceOf[MemberDowned] || m.isInstanceOf[MemberRemoved] ⇒
|
||||
// TODO MemberDowned match should probably be covered by MemberRemoved, see ticket #2788
|
||||
// but right now we don't change Downed to Removed
|
||||
case m: MemberEvent if m.isInstanceOf[MemberRemoved] ⇒
|
||||
publish(event)
|
||||
// notify DeathWatch about downed node
|
||||
publish(AddressTerminated(m.member.address))
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue