I read in Akka's documentation that when using cluster singleton one should avoid using automatic downing. I don't understand how should downing be configured in that case. I understand that I may subscribe to cluster membership events and plan my strategy according to those messages. However, I don't understand how practically it will be different from automatic downing.
When a node is somehow partitioned from the cluster, if automatic downing is used, the partitioned node will "think" that the entire cluster went missing and start a cluster of its own (with its own singleton). But, on the other hand, I can't keep unreachable nodes in unreachable state forever because the cluster won't reach convergence (new nodes won't be able to join) and if the partitioned node is the singleton itself a new singleton node won't be assigned and therefor, according to my understanding, the only thing that is left to do is to remove unreachable nodes after some grace time which is exactly what automatic downing does.
What do I miss here?