-
Notifications
You must be signed in to change notification settings - Fork 1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Two actors are created by remote deploy using Props.WithDeploy #1025
Comments
I've tested the example and can verify that this is going on. I also debugged the actor hashcode and context hashcode that clearly shows that both the context and the actor are different instances in both cases. Both contexts has the same Self path, so it seems like remote deploy in some way creates two instances and ignores one of them. As the context hascode is different, this is clearly not a matter of superviosion either. its something bigger going on.
|
Investigating. |
This code is invoked twice in Endpoint.cs Any ideas why?
|
I'm trying to use remote deploy using Props.WithDeploy.
Following code illustrates the behaviour (loading configuration etc is not shown )
conf1/2 is loaded from standard configuration (with port 42000 for server and 42001 for client)
akka
{
actor {
provider = "Akka.Remote.RemoteActorRefProvider, Akka.Remote"
}
remote {
helios.tcp {
port = 42001
hostname = localhost
}
}
}
Test is blank actor.
Running this sample makes Test to be instantinated twice.
Logs show two records
[DEBUG][02.06.2015 19:29:21][Thread 0001][LocalActorRefProvider(akka://Server)] [akka://Server/] Instantiating Remote Actor [akka.tcp://Client@localhost:42001/remote/akka.tcp/Server@localhost:42000/user/Test]
This behaviour is the same when ActorSystems are located in different processes.
When same approach is used for "plug-in" scenario
Two actors are instantiated on a client again, but Context.GetChildren() yields only one child actor
The text was updated successfully, but these errors were encountered: