Interface DistributedPubSubMediator.Internal$.ChildActorTerminationProtocol

  • Enclosing class:
    DistributedPubSubMediator.Internal$

    public static interface DistributedPubSubMediator.Internal$.ChildActorTerminationProtocol
    Messages used to encode protocol to make sure that we do not send Subscribe/Unsubscribe message to child (mediator -> topic, topic -> group) during a period of transition. Protects from situations like:

    Sending Subscribe/Unsubscribe message to child actor after child has been terminated but Terminate message did not yet arrive to parent.

    Sending Subscribe/Unsubscribe message to child actor that has Prune message queued and pruneDeadline set.

    In both of those situation parent actor still thinks that child actor is alive and forwards messages to it resulting in lost ACKs.