1
votes

I was running into a problem attempting to set up a Cluster Singleton within an Akka.NET cluster where more than one instance of the singleton was starting up and running within my cluster. The cluster consists of Lighthouse (the seed node) and x number of instances of the main cluster node of which there are cluster shards as well as this singleton that exist within this node.

In order to reproduce the problem I was having I set up an example solution in GitHub but unfortunately I'm having a different problem here as I always get Singleton not available messages and my singleton never receives a message. This is sort of opposite problem that I was getting originally but nonetheless I would like to sort out a working example of cluster singleton.

[DEBUG][8/22/2016 3:06:18 PM][Thread 0015][[akka://singletontest/user/my-singleton-proxy#1237572454]] Singleton not available, buffering message type [System.String]

In the Lighthouse process I see the following messags.

Akka.Remote.EndpointWriter: Dropping message [Akka.Actor.ActorSelectionMessage] for non-local recipient [[akka.tcp://[email protected]:4053/]] arriving at [akka.tcp://[email protected]:4053] inbound addresses [akka.tcp://[email protected]:4053]

Potentially related:

1

1 Answers

0
votes

It appears that the only bit that was missing was that the actor system specified in the actor path for my seed node did not match the actor system name specified in both Lighthouse and my Cluster Node processes. After ensuring that it matches in all three places the cluster is now behaving as expected.

https://github.com/jpierson/x-akka-cluster-singleton/commit/77ae63209042841c144f69d4cd70e9925b68a79a

Special thanks to Chris G. Stevens for his assistance.