Hi all,

The ClusterClient is designed to connect to a single ClusterReceptionist. 
When a cluster node running a receptionist gracefully leaves the cluster 
(i.e., because the node is shutting down), the cluster clients connected to 
that receptionist will keep sending message to it until the failure 
detector actually detects a failure. Detecting the failure can take quite 
long, depending on the configured heartbeat-interval and 
acceptable-heartbeat-pause (by default, up to 15 seconds).

In the case of a graceful shutdown of the cluster receptionist, couldn't we 
make the cluster client switch to another receptionist much faster?

There are a couple ways we could do that, but I feel the most elegant would 
require to modify ClusterClient and ClusterReceptionist. Here's what I 
tried... I'm wondering if there's an interest in discussing/improving it 
for inclusion upstream, I could create an issue/PR if there's interest.

I've created a new message: 
ClusterReceptionist.Internal.ReceptionistShutdown.

When a receptionist detects that the node it is running on is removed from 
the cluster, in addition to stopping itself, it sends the 
ReceptionistShutdown message to all clients which interacted (using 
ClusterReceptionist.clientInteractions).

When a cluster client get the ReceptionistShutdown message from the 
receptionist it is currently connect to, it behaves as if a failure had 
been detected, effectively looking for another receptionist to connect to.

Should I do a PR out of this? Are there better ways?

Thanks, Fred

-- 
>>>>>>>>>>      Read the docs: http://akka.io/docs/
>>>>>>>>>>      Check the FAQ: 
>>>>>>>>>> http://doc.akka.io/docs/akka/current/additional/faq.html
>>>>>>>>>>      Search the archives: https://groups.google.com/group/akka-user
--- 
You received this message because you are subscribed to the Google Groups "Akka 
User List" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/akka-user.
For more options, visit https://groups.google.com/d/optout.

Reply via email to