Re: [akka-user] Java serializer cannot be replaced?
The serialized messages you see are sent between local actors and don't need efficient serialization. The only reason they are serialized is that you run with: akka.actor.serialize-messages = on That is only intended for testing. /Patrik On Tue, Mar 18, 2014 at 4:01 AM, Daniel Wang dan...@coinport.com wrote: hi, when I start up my akka cluster, I configure found these java serializer related log entries: DEBUG akka.serialization.Serialization(akka://coinex)[Serialization(akka://coinex)] Using serializer[akka.serialization.JavaSerializer] for message [akka.cluster.InternalClusterAction$ReapUnreachableTick$] DEBUG akka.serialization.Serialization(akka://coinex)[Serialization(akka://coinex)] Using serializer[akka.serialization.JavaSerializer] for message [akka.cluster.InternalClusterAction$GossipTick$] DEBUG akka.serialization.Serialization(akka://coinex)[Serialization(akka://coinex)] Using serializer[akka.serialization.JavaSerializer] for message [akka.cluster.InternalClusterAction$LeaderActionsTick$] DEBUG akka.serialization.Serialization(akka://coinex)[RegisterConversionHelpers$] Registering Scala Conversions. DEBUG akka.serialization.Serialization(akka://coinex)[RegisterConversionHelpers$] Deserializers for Scala Conversions registering DEBUG akka.serialization.Serialization(akka://coinex)[RegisterConversionHelpers$] Serializers for Scala Conversions registering DEBUG akka.serialization.Serialization(akka://coinex)[RegisterConversionHelpers$] Setting up OptionSerializer DEBUG akka.serialization.Serialization(akka://coinex)[RegisterConversionHelpers$] Setting up ScalaCollectionSerializer DEBUG akka.serialization.Serialization(akka://coinex)[RegisterConversionHelpers$] Setting up ScalaRegexSerializers DEBUG akka.serialization.Serialization(akka://coinex)[RegisterConversionHelpers$] Hooking up scala.util.matching.Regex serializer DEBUG akka.serialization.Serialization(akka://coinex)[RegisterConversionHelpers$] Reached base registration method on MongoConversionHelper. DEBUG akka.serialization.Serialization(akka://coinex)[Serialization(akka://coinex)] Using serializer[akka.serialization.JavaSerializer] for message [akka.persistence.SnapshotProtocol$LoadSnapshotResult] DEBUG akka.serialization.Serialization(akka://coinex)[Serialization(akka://coinex)] Using serializer[akka.serialization.JavaSerializer] for message [akka.persistence.JournalProtocol$ReplayMessages] DEBUG akka.serialization.Serialization(akka://coinex)[Serialization(akka://coinex)] Using serializer[akka.serialization.JavaSerializer] for message [akka.remote.RemoteWatcher$HeartbeatTick$] DEBUG akka.serialization.Serialization(akka://coinex)[Serialization(akka://coinex)] Using serializer[akka.serialization.JavaSerializer] for message [akka.remote.RemoteWatcher$ReapUnreachableTick$] DEBUG akka.serialization.Serialization(akka://coinex)[Serialization(akka://coinex)] Using serializer[akka.serialization.JavaSerializer] for message [akka.cluster.ClusterHeartbeatSender$HeartbeatTick$] DEBUG akka.serialization.Serialization(akka://coinex)[Serialization(akka://coinex)] Using serializer[akka.serialization.JavaSerializer] for message [akka.contrib.pattern.DistributedPubSubMediator$Internal$GossipTick$] DEBUG akka.serialization.Serialization(akka://coinex)[Serialization(akka://coinex)] Using serializer[akka.serialization.JavaSerializer] for message [akka.persistence.JournalProtocol$ReplayMessagesSuccess$] DEBUG akka.serialization.Serialization(akka://coinex)[Serialization(akka://coinex)] Using serializer[akka.serialization.JavaSerializer] for message [akka.persistence.Update] DEBUG akka.serialization.Serialization(akka://coinex)[Serialization(akka://coinex)] Using serializer[akka.serialization.JavaSerializer] for message [akka.cluster.InternalClusterAction$MetricsTick$] DEBUG akka.serialization.Serialization(akka://coinex)[Serialization(akka://coinex)] Using serializer[akka.serialization.JavaSerializer] for message [akka.cluster.InternalClusterAction$PublishEvent] DEBUG akka.serialization.Serialization(akka://coinex)[Serialization(akka://coinex)] Using serializer[akka.serialization.JavaSerializer] for message [akka.cluster.ClusterEvent$ClusterMetricsChanged] DEBUG Remoting[Remoting] Associated [akka.tcp:// coinex@192.168.0.103:25551] - [akka.tcp://coinex@192.168.0.103:49368] DEBUG akka.serialization.Serialization(akka://coinex)[Serialization(akka://coinex)] Using serializer[akka.cluster.protobuf.ClusterMessageSerializer] for message [akka.cluster.InternalClusterAction$InitJoin$] DEBUG akka.serialization.Serialization(akka://coinex)[Serialization(akka://coinex)] Using serializer[akka.cluster.protobuf.ClusterMessageSerializer] for message [akka.cluster.InternalClusterAction$InitJoinAck] DEBUG akka.serialization.Serialization(akka://coinex)[Serialization(akka://coinex)] Using serializer[akka.cluster.protobuf.ClusterMessageSerializer]
[akka-user] java.io.NotSerializableException with customer serialization object
My custom serialization object with remoting works without a problem. The NotSerializableException is thrown when adding ReliableProxy. val proxy = context.system.actorOf(Props(classOf[ReliableProxy], remoteRef, 100.millis), proxy) // remoteRef ! customSerializedObject // - this works fine, remote can receive the message correctly. proxy ! customSerializedObject // - this throws NotSerializableException. From the stack trace, it looks like inside the FSM, it can't select the correct serializer ( it always selects JavaSerializer ) in ReliableProxy class. Is there any work around or what might be the root cause for this issue? akka version is 2.2.3 java version is 1.6.x scala is 2.10.x Thanks Transient association error (association remains live) java.io.NotSerializableException: sample.model.CustomSerializedObject at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1164) at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1518) at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1483) at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1400) at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1158) at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:330) at akka.serialization.JavaSerializer$$anonfun$toBinary$1.apply$mcV$sp(Serializer.scala:129) at akka.serialization.JavaSerializer$$anonfun$toBinary$1.apply(Serializer.scala:129) at akka.serialization.JavaSerializer$$anonfun$toBinary$1.apply(Serializer.scala:129) at scala.util.DynamicVariable.withValue(DynamicVariable.scala:57) at akka.serialization.JavaSerializer.toBinary(Serializer.scala:129) at akka.remote.MessageSerializer$.serialize(MessageSerializer.scala:36) at akka.remote.EndpointWriter$$anonfun$akka$remote$EndpointWriter$$serializeMessage$1.apply(Endpoint.scala:672) at akka.remote.EndpointWriter$$anonfun$akka$remote$EndpointWriter$$serializeMessage$1.apply(Endpoint.scala:672) at scala.util.DynamicVariable.withValue(DynamicVariable.scala:57) at akka.remote.EndpointWriter.akka$remote$EndpointWriter$$serializeMessage(Endpoint.scala:671) at akka.remote.EndpointWriter$$anonfun$7.applyOrElse(Endpoint.scala:559) at akka.remote.EndpointWriter$$anonfun$7.applyOrElse(Endpoint.scala:544) at scala.runtime.AbstractPartialFunction.apply(AbstractPartialFunction.scala:33) at akka.actor.FSM$class.processEvent(FSM.scala:595) at akka.remote.EndpointWriter.processEvent(Endpoint.scala:443) at akka.actor.FSM$class.akka$actor$FSM$$processMsg(FSM.scala:589) at akka.actor.FSM$$anonfun$receive$1.applyOrElse(FSM.scala:583) at akka.actor.ActorCell.receiveMessage(ActorCell.scala:498) at akka.actor.ActorCell.invoke(ActorCell.scala:456) at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:237) at akka.dispatch.Mailbox.run(Mailbox.scala:219) at akka.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec(AbstractDispatcher.scala:386) at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260) at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339) at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979) at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107) -- 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 akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout.
[akka-user] [akka-persistence] actor name [snapshot-store] is not unique!
Hi, I am getting the below exception from time to time and have no idea how to get rid of it. I have only reconfigured the journal plugin, but not modified anything related to the snapshot store. Any ideas? thanks Carsten 11:23:37.614 [kiarchive-akka.actor.default-dispatcher-19] ERROR akka.actor.OneForOneStrategy - actor name [snapshot-store] is not unique! akka.actor.ActorInitializationException: exception during creation at akka.actor.ActorInitializationException$.apply(Actor.scala:164) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.ActorCell.create(ActorCell.scala:596) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.ActorCell.invokeAll$1(ActorCell.scala:456) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.ActorCell.systemInvoke(ActorCell.scala:478) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.dispatch.Mailbox.processAllSystemMessages(Mailbox.scala:263) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.dispatch.Mailbox.run(Mailbox.scala:219) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) ~[na:1.7.0_09-icedtea] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) ~[na:1.7.0_09-icedtea] at java.lang.Thread.run(Thread.java:722) ~[na:1.7.0_09-icedtea] Caused by: akka.actor.InvalidActorNameException: actor name [snapshot-store] is not unique! at akka.actor.dungeon.ChildrenContainer$NormalChildrenContainer.reserve(ChildrenContainer.scala:130) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.dungeon.Children$class.reserveChild(Children.scala:77) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.ActorCell.reserveChild(ActorCell.scala:369) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.dungeon.Children$class.makeChild(Children.scala:202) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.dungeon.Children$class.attachChild(Children.scala:42) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.ActorCell.attachChild(ActorCell.scala:369) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.ActorSystemImpl.systemActorOf(ActorSystem.scala:550) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.persistence.Persistence.createPlugin(Persistence.scala:148) ~[com.typesafe.akka.akka-persistence-experimental_2.10-2.3.0.jar:na] at akka.persistence.Persistence.init(Persistence.scala:87) ~[com.typesafe.akka.akka-persistence-experimental_2.10-2.3.0.jar:na] at akka.persistence.Persistence$.createExtension(Persistence.scala:73) ~[com.typesafe.akka.akka-persistence-experimental_2.10-2.3.0.jar:na] at akka.persistence.Persistence$.createExtension(Persistence.scala:67) ~[com.typesafe.akka.akka-persistence-experimental_2.10-2.3.0.jar:na] at akka.actor.ActorSystemImpl.registerExtension(ActorSystem.scala:698) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.ExtensionId$class.apply(Extension.scala:79) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.persistence.Persistence$.apply(Persistence.scala:67) ~[com.typesafe.akka.akka-persistence-experimental_2.10-2.3.0.jar:na] at akka.persistence.snapshot.SnapshotStore$class.$init$(SnapshotStore.scala:21) ~[com.typesafe.akka.akka-persistence-experimental_2.10-2.3.0.jar:na] at akka.persistence.snapshot.local.LocalSnapshotStore.init(LocalSnapshotStore.scala:26) ~[com.typesafe.akka.akka-persistence-experimental_2.10-2.3.0.jar:na] at sun.reflect.GeneratedConstructorAccessor2.newInstance(Unknown Source) ~[na:na] at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[na:1.7.0_09-icedtea] at java.lang.reflect.Constructor.newInstance(Constructor.java:525) ~[na:1.7.0_09-icedtea] at java.lang.Class.newInstance0(Class.java:372) ~[na:1.7.0_09-icedtea] at java.lang.Class.newInstance(Class.java:325) ~[na:1.7.0_09-icedtea] at akka.util.Reflect$.instantiate(Reflect.scala:45) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.NoArgsReflectConstructor.produce(Props.scala:358) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.Props.newActor(Props.scala:249) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.ActorCell.newActor(ActorCell.scala:552) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.ActorCell.create(ActorCell.scala:578) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] ... 7 common frames omitted -- Read the docs: http://akka.io/docs/ Check the FAQ: http://doc.akka.io/docs/akka/current/additional/faq.html Search the archives:
[akka-user] Cluster failover: preloaded actors
Hi All. First of all many thanks for so efficient library. Very good job! We're analyzing Akka to support a cluster of heavy objects (a single actor could have a couple of gigs in RAM). I'm wondering if I could use some kind of 'preloaded' in ram slave actor that could be used if the 'master actor' fails. It would be something like an updated View or something like that which gets the main role after a failure. The journal and snapshots are ok but I'm afraid that the recovering time could be minimized if I used the 'slave' idea for heavy actors. After the backup object gets the main role a new 'slave' should be created from a normal snapshot and it would be prepared for the next failover cycle. I've tried to find out in the docs something to help me with this without success. Many thanks in advance for your help! -- 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 akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout.
[akka-user] Re: Reconnect Remote Actor
Here is the output from System A: This is after a connection is made and the first request is processed 07:12:52.133 [WorkServerSystem-akka.actor.default-dispatcher-218] DEBUG a.s.Serialization(akka://WorkServerSystem) - Using serializer[akka.serialization.JavaSerializer] for message [org.mtsi.ksiservices.services.signature.SignatureResult] This is after I stop the other system 07:13:00.633 [WorkServerSystem-akka.actor.default-dispatcher-3] WARN a.remote.ReliableDeliverySupervisor - Association with remote system [akka.tcp://TestSystem@192.168.14.136:5151] has failed, address is now gated for [5000] ms. Reason is: [Disassociated]. 07:13:00.646 [WorkServerSystem-akka.actor.default-dispatcher-3] INFO akka.actor.LocalActorRef - Message [akka.remote.transport.ActorTransportAdapter$DisassociateUnderlying] from Actor[akka://WorkServerSystem/deadLetters] to Actor[akka://WorkServerSystem/system/transports/akkaprotocolmanager.tcp0/akkaProtocol-tcp%3A%2F%2FWorkServerSystem%40192.168.14.136%3A58147-1#1355872844] was not delivered. [1] dead letters encountered. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. This is after I start the other system again and attempt to send it a request 07:13:09.459 [WorkServerSystem-akka.actor.default-dispatcher-2] WARN a.remote.ReliableDeliverySupervisor - Association with remote system [akka.tcp://TestSystem@192.168.14.136:5151] has failed, address is now gated for [5000] ms. Reason is: [Association failed with [akka.tcp://TestSystem@192.168.14.136:5151]]. 07:13:09.540 [WorkServerSystem-akka.actor.default-dispatcher-219] INFO a.r.RemoteActorRefProvider$RemoteDeadLetterActorRef - Message [org.mtsi.ksiservices.services.signature.SignatureResult] from Actor[akka://WorkServerSystem/deadLetters] to Actor[akka://WorkServerSystem/deadLetters] was not delivered. [2] dead letters encountered. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. 07:13:09.541 [WorkServerSystem-akka.actor.default-dispatcher-219] INFO a.r.RemoteActorRefProvider$RemoteDeadLetterActorRef - Message [org.mtsi.ksiservices.services.signature.SignatureResult] from Actor[akka://WorkServerSystem/deadLetters] to Actor[akka://WorkServerSystem/deadLetters] was not delivered. [3] dead letters encountered. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. 07:13:09.542 [WorkServerSystem-akka.actor.default-dispatcher-219] INFO a.r.RemoteActorRefProvider$RemoteDeadLetterActorRef - Message [org.mtsi.ksiservices.services.signature.SignatureResult] from Actor[akka://WorkServerSystem/deadLetters] to Actor[akka://WorkServerSystem/deadLetters] was not delivered. [4] dead letters encountered. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. 07:13:09.543 [WorkServerSystem-akka.actor.default-dispatcher-219] INFO a.r.RemoteActorRefProvider$RemoteDeadLetterActorRef - Message [org.mtsi.ksiservices.services.signature.SignatureResult] from Actor[akka://WorkServerSystem/deadLetters] to Actor[akka://WorkServerSystem/deadLetters] was not delivered. [5] dead letters encountered. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. 07:13:09.543 [WorkServerSystem-akka.actor.default-dispatcher-219] INFO a.r.RemoteActorRefProvider$RemoteDeadLetterActorRef - Message [org.mtsi.ksiservices.services.signature.SignatureResult] from Actor[akka://WorkServerSystem/deadLetters] to Actor[akka://WorkServerSystem/deadLetters] was not delivered. [6] dead letters encountered. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. 07:13:09.552 [WorkServerSystem-akka.actor.default-dispatcher-3] INFO a.r.RemoteActorRefProvider$RemoteDeadLetterActorRef - Message [org.mtsi.ksiservices.services.signature.SignatureResult] from Actor[akka://WorkServerSystem/deadLetters] to Actor[akka://WorkServerSystem/deadLetters] was not delivered. [7] dead letters encountered. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. 07:13:09.553 [WorkServerSystem-akka.actor.default-dispatcher-3] INFO a.r.RemoteActorRefProvider$RemoteDeadLetterActorRef - Message [org.mtsi.ksiservices.services.signature.SignatureResult] from Actor[akka://WorkServerSystem/deadLetters] to Actor[akka://WorkServerSystem/deadLetters] was not delivered. [8] dead letters encountered. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and
[akka-user] Re: [akka-persistence] actor name [snapshot-store] is not unique!
Hi again, I actually figured out that the journal plugin jar was not in the classpath on that node. After having added it, the error is gone. So I assume it was somehow related to that. However, there should probably be a more explicit exception when the plugin is not available. best Carsten Am Dienstag, 18. März 2014 11:28:56 UTC+1 schrieb Carsten Saathoff: Hi, I am getting the below exception from time to time and have no idea how to get rid of it. I have only reconfigured the journal plugin, but not modified anything related to the snapshot store. Any ideas? thanks Carsten 11:23:37.614 [kiarchive-akka.actor.default-dispatcher-19] ERROR akka.actor.OneForOneStrategy - actor name [snapshot-store] is not unique! akka.actor.ActorInitializationException: exception during creation at akka.actor.ActorInitializationException$.apply(Actor.scala:164) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.ActorCell.create(ActorCell.scala:596) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.ActorCell.invokeAll$1(ActorCell.scala:456) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.ActorCell.systemInvoke(ActorCell.scala:478) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.dispatch.Mailbox.processAllSystemMessages(Mailbox.scala:263) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.dispatch.Mailbox.run(Mailbox.scala:219) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) ~[na:1.7.0_09-icedtea] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) ~[na:1.7.0_09-icedtea] at java.lang.Thread.run(Thread.java:722) ~[na:1.7.0_09-icedtea] Caused by: akka.actor.InvalidActorNameException: actor name [snapshot-store] is not unique! at akka.actor.dungeon.ChildrenContainer$NormalChildrenContainer.reserve(ChildrenContainer.scala:130) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.dungeon.Children$class.reserveChild(Children.scala:77) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.ActorCell.reserveChild(ActorCell.scala:369) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.dungeon.Children$class.makeChild(Children.scala:202) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.dungeon.Children$class.attachChild(Children.scala:42) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.ActorCell.attachChild(ActorCell.scala:369) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.ActorSystemImpl.systemActorOf(ActorSystem.scala:550) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.persistence.Persistence.createPlugin(Persistence.scala:148) ~[com.typesafe.akka.akka-persistence-experimental_2.10-2.3.0.jar:na] at akka.persistence.Persistence.init(Persistence.scala:87) ~[com.typesafe.akka.akka-persistence-experimental_2.10-2.3.0.jar:na] at akka.persistence.Persistence$.createExtension(Persistence.scala:73) ~[com.typesafe.akka.akka-persistence-experimental_2.10-2.3.0.jar:na] at akka.persistence.Persistence$.createExtension(Persistence.scala:67) ~[com.typesafe.akka.akka-persistence-experimental_2.10-2.3.0.jar:na] at akka.actor.ActorSystemImpl.registerExtension(ActorSystem.scala:698) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.ExtensionId$class.apply(Extension.scala:79) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.persistence.Persistence$.apply(Persistence.scala:67) ~[com.typesafe.akka.akka-persistence-experimental_2.10-2.3.0.jar:na] at akka.persistence.snapshot.SnapshotStore$class.$init$(SnapshotStore.scala:21) ~[com.typesafe.akka.akka-persistence-experimental_2.10-2.3.0.jar:na] at akka.persistence.snapshot.local.LocalSnapshotStore.init(LocalSnapshotStore.scala:26) ~[com.typesafe.akka.akka-persistence-experimental_2.10-2.3.0.jar:na] at sun.reflect.GeneratedConstructorAccessor2.newInstance(Unknown Source) ~[na:na] at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[na:1.7.0_09-icedtea] at java.lang.reflect.Constructor.newInstance(Constructor.java:525) ~[na:1.7.0_09-icedtea] at java.lang.Class.newInstance0(Class.java:372) ~[na:1.7.0_09-icedtea] at java.lang.Class.newInstance(Class.java:325) ~[na:1.7.0_09-icedtea] at akka.util.Reflect$.instantiate(Reflect.scala:45) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.NoArgsReflectConstructor.produce(Props.scala:358) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.Props.newActor(Props.scala:249)
Re: [akka-user] Re: [akka-persistence] actor name [snapshot-store] is not unique!
On Tue, Mar 18, 2014 at 12:22 PM, Carsten Saathoff cars...@kreuzverweis.com wrote: Hi again, I actually figured out that the journal plugin jar was not in the classpath on that node. After having added it, the error is gone. So I assume it was somehow related to that. However, there should probably be a more explicit exception when the plugin is not available. Ah, that explains it. Would you mind creating a tickethttp://doc.akka.io/docs/akka/current/project/issue-tracking.html? The error reporting might need to be improved. Thanks, Patrik best Carsten Am Dienstag, 18. März 2014 11:28:56 UTC+1 schrieb Carsten Saathoff: Hi, I am getting the below exception from time to time and have no idea how to get rid of it. I have only reconfigured the journal plugin, but not modified anything related to the snapshot store. Any ideas? thanks Carsten 11:23:37.614 [kiarchive-akka.actor.default-dispatcher-19] ERROR akka.actor.OneForOneStrategy - actor name [snapshot-store] is not unique! akka.actor.ActorInitializationException: exception during creation at akka.actor.ActorInitializationException$.apply(Actor.scala:164) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.ActorCell.create(ActorCell.scala:596) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.ActorCell.invokeAll$1(ActorCell.scala:456) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.ActorCell.systemInvoke(ActorCell.scala:478) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.dispatch.Mailbox.processAllSystemMessages(Mailbox.scala:263) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.dispatch.Mailbox.run(Mailbox.scala:219) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) ~[na:1.7.0_09-icedtea] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) ~[na:1.7.0_09-icedtea] at java.lang.Thread.run(Thread.java:722) ~[na:1.7.0_09-icedtea] Caused by: akka.actor.InvalidActorNameException: actor name [snapshot-store] is not unique! at akka.actor.dungeon.ChildrenContainer$NormalChildrenContainer. reserve(ChildrenContainer.scala:130) ~[com.typesafe.akka.akka- actor_2.10-2.3.0.jar:na] at akka.actor.dungeon.Children$class.reserveChild(Children.scala:77) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.ActorCell.reserveChild(ActorCell.scala:369) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.dungeon.Children$class.makeChild(Children.scala:202) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.dungeon.Children$class.attachChild(Children.scala:42) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.ActorCell.attachChild(ActorCell.scala:369) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.ActorSystemImpl.systemActorOf(ActorSystem.scala:550) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.persistence.Persistence.createPlugin(Persistence.scala:148) ~[com.typesafe.akka.akka-persistence-experimental_2.10-2.3.0.jar:na] at akka.persistence.Persistence.init(Persistence.scala:87) ~[com.typesafe.akka.akka-persistence-experimental_2.10-2.3.0.jar:na] at akka.persistence.Persistence$.createExtension(Persistence.scala:73) ~[com.typesafe.akka.akka-persistence-experimental_2.10-2.3.0.jar:na] at akka.persistence.Persistence$.createExtension(Persistence.scala:67) ~[com.typesafe.akka.akka-persistence-experimental_2.10-2.3.0.jar:na] at akka.actor.ActorSystemImpl.registerExtension(ActorSystem.scala:698) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.ExtensionId$class.apply(Extension.scala:79) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.persistence.Persistence$.apply(Persistence.scala:67) ~[com.typesafe.akka.akka-persistence-experimental_2.10-2.3.0.jar:na] at akka.persistence.snapshot.SnapshotStore$class.$init$(SnapshotStore.scala:21) ~[com.typesafe.akka.akka-persistence-experimental_2.10-2.3.0.jar:na] at akka.persistence.snapshot.local.LocalSnapshotStore. init(LocalSnapshotStore.scala:26) ~[com.typesafe.akka.akka- persistence-experimental_2.10-2.3.0.jar:na] at sun.reflect.GeneratedConstructorAccessor2.newInstance(Unknown Source) ~[na:na] at sun.reflect.DelegatingConstructorAccessorImpl.newInstance( DelegatingConstructorAccessorImpl.java:45) ~[na:1.7.0_09-icedtea] at java.lang.reflect.Constructor.newInstance(Constructor.java:525) ~[na:1.7.0_09-icedtea] at java.lang.Class.newInstance0(Class.java:372) ~[na:1.7.0_09-icedtea] at java.lang.Class.newInstance(Class.java:325) ~[na:1.7.0_09-icedtea] at akka.util.Reflect$.instantiate(Reflect.scala:45)
Re: [akka-user] Re: Reconnect Remote Actor
On Tue, Mar 18, 2014 at 12:20 PM, Rob S rms...@gmail.com wrote: Here is the output from System A: This is after a connection is made and the first request is processed 07:12:52.133 [WorkServerSystem-akka.actor.default-dispatcher-218] DEBUG a.s.Serialization(akka://WorkServerSystem) - Using serializer[akka.serialization.JavaSerializer] for message [org.mtsi.ksiservices.services.signature.SignatureResult] This is after I stop the other system a.k.a. system B 07:13:00.633 [WorkServerSystem-akka.actor.default-dispatcher-3] WARN a.remote.ReliableDeliverySupervisor - Association with remote system [akka.tcp://TestSystem@192.168.14.136:5151] has failed, address is now gated for [5000] ms. Reason is: [Disassociated]. 07:13:00.646 [WorkServerSystem-akka.actor.default-dispatcher-3] INFO akka.actor.LocalActorRef - Message [akka.remote.transport.ActorTransportAdapter$DisassociateUnderlying] from Actor[akka://WorkServerSystem/deadLetters] to Actor[akka://WorkServerSystem/system/transports/akkaprotocolmanager.tcp0/akkaProtocol-tcp%3A%2F%2FWorkServerSystem%40192.168.14.136%3A58147-1#1355872844] was not delivered. [1] dead letters encountered. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. This is after I start the other system again and attempt to send it a request so the new system B' has connected and delivered a message to an actor in system A, and the following is the replies from A to B'? 07:13:09.459 [WorkServerSystem-akka.actor.default-dispatcher-2] WARN a.remote.ReliableDeliverySupervisor - Association with remote system [akka.tcp://TestSystem@192.168.14.136:5151] has failed, address is now gated for [5000] ms. Reason is: [Association failed with [akka.tcp://TestSystem@192.168.14.136:5151]]. 07:13:09.540 [WorkServerSystem-akka.actor.default-dispatcher-219] INFO a.r.RemoteActorRefProvider$RemoteDeadLetterActorRef - Message [org.mtsi.ksiservices.services.signature.SignatureResult] from Actor[akka://WorkServerSystem/deadLetters] to Actor[akka://WorkServerSystem/deadLetters] was not delivered. [2] dead letters encountered. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. 07:13:09.541 [WorkServerSystem-akka.actor.default-dispatcher-219] INFO a.r.RemoteActorRefProvider$RemoteDeadLetterActorRef - Message [org.mtsi.ksiservices.services.signature.SignatureResult] from Actor[akka://WorkServerSystem/deadLetters] to Actor[akka://WorkServerSystem/deadLetters] was not delivered. [3] dead letters encountered. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. 07:13:09.542 [WorkServerSystem-akka.actor.default-dispatcher-219] INFO a.r.RemoteActorRefProvider$RemoteDeadLetterActorRef - Message [org.mtsi.ksiservices.services.signature.SignatureResult] from Actor[akka://WorkServerSystem/deadLetters] to Actor[akka://WorkServerSystem/deadLetters] was not delivered. [4] dead letters encountered. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. 07:13:09.543 [WorkServerSystem-akka.actor.default-dispatcher-219] INFO a.r.RemoteActorRefProvider$RemoteDeadLetterActorRef - Message [org.mtsi.ksiservices.services.signature.SignatureResult] from Actor[akka://WorkServerSystem/deadLetters] to Actor[akka://WorkServerSystem/deadLetters] was not delivered. [5] dead letters encountered. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. 07:13:09.543 [WorkServerSystem-akka.actor.default-dispatcher-219] INFO a.r.RemoteActorRefProvider$RemoteDeadLetterActorRef - Message [org.mtsi.ksiservices.services.signature.SignatureResult] from Actor[akka://WorkServerSystem/deadLetters] to Actor[akka://WorkServerSystem/deadLetters] was not delivered. [6] dead letters encountered. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. 07:13:09.552 [WorkServerSystem-akka.actor.default-dispatcher-3] INFO a.r.RemoteActorRefProvider$RemoteDeadLetterActorRef - Message [org.mtsi.ksiservices.services.signature.SignatureResult] from Actor[akka://WorkServerSystem/deadLetters] to Actor[akka://WorkServerSystem/deadLetters] was not delivered. [7] dead letters encountered. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. 07:13:09.553 [WorkServerSystem-akka.actor.default-dispatcher-3] INFO a.r.RemoteActorRefProvider$RemoteDeadLetterActorRef - Message [org.mtsi.ksiservices.services.signature.SignatureResult] from Actor[akka://WorkServerSystem/deadLetters] to
Re: [akka-user] Re: [akka-persistence] actor name [snapshot-store] is not unique!
Hi, done: https://www.assembla.com/spaces/akka/tickets/3935#/activity/ticket: best Carsten Am Dienstag, 18. März 2014 12:37:26 UTC+1 schrieb Patrik Nordwall: On Tue, Mar 18, 2014 at 12:22 PM, Carsten Saathoff car...@kreuzverweis.com javascript: wrote: Hi again, I actually figured out that the journal plugin jar was not in the classpath on that node. After having added it, the error is gone. So I assume it was somehow related to that. However, there should probably be a more explicit exception when the plugin is not available. Ah, that explains it. Would you mind creating a tickethttp://doc.akka.io/docs/akka/current/project/issue-tracking.html? The error reporting might need to be improved. Thanks, Patrik best Carsten Am Dienstag, 18. März 2014 11:28:56 UTC+1 schrieb Carsten Saathoff: Hi, I am getting the below exception from time to time and have no idea how to get rid of it. I have only reconfigured the journal plugin, but not modified anything related to the snapshot store. Any ideas? thanks Carsten 11:23:37.614 [kiarchive-akka.actor.default-dispatcher-19] ERROR akka.actor.OneForOneStrategy - actor name [snapshot-store] is not unique! akka.actor.ActorInitializationException: exception during creation at akka.actor.ActorInitializationException$.apply(Actor.scala:164) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.ActorCell.create(ActorCell.scala:596) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.ActorCell.invokeAll$1(ActorCell.scala:456) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.ActorCell.systemInvoke(ActorCell.scala:478) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.dispatch.Mailbox.processAllSystemMessages(Mailbox.scala:263) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.dispatch.Mailbox.run(Mailbox.scala:219) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) ~[na:1.7.0_09-icedtea] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) ~[na:1.7.0_09-icedtea] at java.lang.Thread.run(Thread.java:722) ~[na:1.7.0_09-icedtea] Caused by: akka.actor.InvalidActorNameException: actor name [snapshot-store] is not unique! at akka.actor.dungeon.ChildrenContainer$NormalChildrenContainer. reserve(ChildrenContainer.scala:130) ~[com.typesafe.akka.akka- actor_2.10-2.3.0.jar:na] at akka.actor.dungeon.Children$class.reserveChild(Children.scala:77) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.ActorCell.reserveChild(ActorCell.scala:369) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.dungeon.Children$class.makeChild(Children.scala:202) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.dungeon.Children$class.attachChild(Children.scala:42) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.ActorCell.attachChild(ActorCell.scala:369) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.ActorSystemImpl.systemActorOf(ActorSystem.scala:550) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.persistence.Persistence.createPlugin(Persistence.scala:148) ~[com.typesafe.akka.akka-persistence-experimental_2.10-2.3.0.jar:na] at akka.persistence.Persistence.init(Persistence.scala:87) ~[com.typesafe.akka.akka-persistence-experimental_2.10-2.3.0.jar:na] at akka.persistence.Persistence$.createExtension(Persistence.scala:73) ~[com.typesafe.akka.akka-persistence-experimental_2.10-2.3.0.jar:na] at akka.persistence.Persistence$.createExtension(Persistence.scala:67) ~[com.typesafe.akka.akka-persistence-experimental_2.10-2.3.0.jar:na] at akka.actor.ActorSystemImpl.registerExtension(ActorSystem.scala:698) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.actor.ExtensionId$class.apply(Extension.scala:79) ~[com.typesafe.akka.akka-actor_2.10-2.3.0.jar:na] at akka.persistence.Persistence$.apply(Persistence.scala:67) ~[com.typesafe.akka.akka-persistence-experimental_2.10-2.3.0.jar:na] at akka.persistence.snapshot.SnapshotStore$class.$init$(SnapshotStore.scala:21) ~[com.typesafe.akka.akka-persistence-experimental_2.10-2.3.0.jar:na] at akka.persistence.snapshot.local.LocalSnapshotStore. init(LocalSnapshotStore.scala:26) ~[com.typesafe.akka.akka- persistence-experimental_2.10-2.3.0.jar:na] at sun.reflect.GeneratedConstructorAccessor2.newInstance(Unknown Source) ~[na:na] at sun.reflect.DelegatingConstructorAccessorImpl.newInstance( DelegatingConstructorAccessorImpl.java:45) ~[na:1.7.0_09-icedtea] at java.lang.reflect.Constructor.newInstance(Constructor.java:525) ~[na:1.7.0_09-icedtea] at
[akka-user] ActorSelection and Identify wildcard issue
Greetings, I've been using Akka in my Java based backend and faced some issue related to ActorSelection API if it is used from ActorContext (from inside Actor). For some reason I cannot find existing Actors via Identify message for specific paths. Imagine, that I have such Actor hierarchy: USER - Parent Actor - Child Actor USER - WorkerActor And let's assume that I would like to locate Child Actor via actor selection and use wildcard for the purpose. So, I'm building such path: /user/*/ChildActor For some reason - if this path is used for lookup via global Akka system context - ActorIdentity provides me ActorRef But, if I will perform the same lookup but from inside WorkerActor via ActorContext - Identify ActorRef is null. For me it seems like a bug and inconsistent behavior. I've provided code with different scenarios and the correct one. JUnit code with the issue https://gist.github.com/Anatolik/9619710 Another one point - for some reason if I call actorSelection.tell from inside Worker Actor - messages got delivered to the target ChildActor. But, I see some errors in dead letters office: 15:08:21.916 INFO [default-akka.actor.default-dispatcher-3] a.a.EmptyLocalActorRef - Message [java.lang.String] from TestActor[akka://default/user/$$a] to Actor[akka://default/user/$$a/ForwardingActor] was not delivered. [1] dead letters encountered. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. Any ideas? -- 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 akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout.
[akka-user] Re: Reconnect Remote Actor
First I just want to thank you for attempting to help me with my issue. Now I have tried to work with the examples you linked and here are my results: Scenario 1: I ran akka-sample-remote-java]$ ./activator run-main sample.mote.calculator.CreationApplication CalculatorWorker and ./activator run-main sample.rote.calculator.CreationApplication Creation in two terminals on the same system and everything worked fine (the common.conf is set to the ip of the system). I was able to kill the Creation and start it up again and everything works fine. The calculating resumes and I see results in the terminal running Creation (I see this same behavior with my application. I can start and stop everything on the same system and it works) Scenario 2: I ran akka-sample-remote-java]$ ./activator run-main sample.mote.calculator.CreationApplication CalculatorWorker on System A, with the common.conf updated to reflect the ip of System A. I ran ./activator run-main sample.rote.calculator.CreationApplication Creation on System B with the common.conf updated to reflect the ip of System B and the remote creation updated the remote ip to connect to System A. I start the CalculatorWorker on System A, I start Creation on System B and everything works. I see Calculating on System A and results on System B. I do a CTRL+C on System B and here are my results: Calculating 3360.0 / 54 Calculating 74 * 50 Calculating 35 * 26 Calculating 75 * 15 Calculating 6 * 28 Calculating 4789.0 / 54 [WARN] [03/18/2014 09:35:00.045] [CalculatorWorkerSystem-akka.remote.default-remote-dispatcher-4] [akka.tcp://CalculatorWorkerSystem@192.168.12.23:2552/system/endpointManager/reliableEndpointWriter-akka.tcp%3A%2F%2FCreationSystem%40192.168.14.136%3A2554-0] Association with remote system [akka.tcp://CreationSystem@192.168.14.136:2554] has failed, address is now gated for [5000] ms. Reason is: [Disassociated]. [INFO] [03/18/2014 09:35:00.060] [CalculatorWorkerSystem-akka.actor.default-dispatcher-2] [akka://CalculatorWorkerSystem/system/transports/akkaprotocolmanager.tcp0/akkaProtocol-tcp%3A%2F%2FCalculatorWorkerSystem%40192.168.14.136%3A33691-1] Message [akka.remote.transport.ActorTransportAdapter$DisassociateUnderlying] from Actor[akka://CalculatorWorkerSystem/deadLetters] to Actor[akka://CalculatorWorkerSystem/system/transports/akkaprotocolmanager.tcp0/akkaProtocol-tcp%3A%2F%2FCalculatorWorkerSystem%40192.168.14.136%3A33691-1#-254990838] was not delivered. [1] dead letters encountered. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. [INFO] [03/18/2014 09:35:00.061] [CalculatorWorkerSystem-akka.actor.default-dispatcher-3] [akka://CalculatorWorkerSystem/system/endpointManager/reliableEndpointWriter-akka.tcp%3A%2F%2FCreationSystem%40192.168.14.136%3A2554-0/endpointWriter] Message [akka.actor.FSM$Timer] from Actor[akka://CalculatorWorkerSystem/deadLetters] to Actor[akka://CalculatorWorkerSystem/system/endpointManager/reliableEndpointWriter-akka.tcp%3A%2F%2FCreationSystem%40192.168.14.136%3A2554-0/endpointWriter#-257802128] was not delivered. [2] dead letters encountered. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. [WARN] [03/18/2014 09:35:05.130] [CalculatorWorkerSystem-akka.remote.default-remote-dispatcher-4] [akka.tcp://CalculatorWorkerSystem@192.168.12.23:2552/system/endpointManager/reliableEndpointWriter-akka.tcp%3A%2F%2FCreationSystem%40192.168.14.136%3A2554-0] Association with remote system [akka.tcp://CreationSystem@192.168.14.136:2554] has failed, address is now gated for [5000] ms. Reason is: [Association failed with [akka.tcp://CreationSystem@192.168.14.136:2554]]. This message continuously repeats on System A [WARN] [03/18/2014 09:36:00.427] [CalculatorWorkerSystem-akka.remote.default-remote-dispatcher-12] [akka.tcp://CalculatorWorkerSystem@192.168.12.23:2552/system/endpointManager/reliableEndpointWriter-akka.tcp%3A%2F%2FCreationSystem%40192.168.14.136%3A2554-0] Association with remote system [akka.tcp://CreationSystem@192.168.14.136:2554] has failed, address is now gated for [5000] ms. Reason is: [Association failed with [akka.tcp://CreationSystem@192.168.14.136:2554]]. Now if I try to start Creation on System B I see the following: Calculating 9329.0 / 80 [WARN] [03/18/2014 09:14:57.059] [CalculatorWorkerSystem-akka.remote.default-remote-dispatcher-6] [akka.tcp://CalculatorWorkerSystem@192.168.12.23:2552/system/endpointManager/reliableEndpointWriter-akka.tcp%3A%2F%2FCreationSystem%40192.168.14.136%3A2554-0] Association with remote system [akka.tcp://CreationSystem@192.168.14.136:2554] has failed, address is now gated for [5000] ms. Reason is: [Association failed with [akka.tcp://CreationSystem@192.168.14.136:2554]]. Calculating 87 * 7 Calculating 2127.0 / 80 Calculating
Re: [akka-user] Re: Reconnect Remote Actor
CreationApplication is using remote deployed actors. I got the impression that you are not using that in your original application. What you are saying is that you see completely different behavior when you run on one machine compared to two separate machines? Any firewall in-between? Are the machines allowed to open connections in both directions? On Tue, Mar 18, 2014 at 2:43 PM, Rob S rms...@gmail.com wrote: First I just want to thank you for attempting to help me with my issue. Now I have tried to work with the examples you linked and here are my results: Scenario 1: I ran akka-sample-remote-java]$ ./activator run-main sample.mote.calculator.CreationApplication CalculatorWorker and ./activator run-main sample.rote.calculator.CreationApplication Creation in two terminals on the same system and everything worked fine (the common.conf is set to the ip of the system). I was able to kill the Creation and start it up again and everything works fine. The calculating resumes and I see results in the terminal running Creation (I see this same behavior with my application. I can start and stop everything on the same system and it works) Scenario 2: I ran akka-sample-remote-java]$ ./activator run-main sample.mote.calculator.CreationApplication CalculatorWorker on System A, with the common.conf updated to reflect the ip of System A. I ran ./activator run-main sample.rote.calculator.CreationApplication Creation on System B with the common.conf updated to reflect the ip of System B and the remote creation updated the remote ip to connect to System A. I start the CalculatorWorker on System A, I start Creation on System B and everything works. I see Calculating on System A and results on System B. I do a CTRL+C on System B and here are my results: Calculating 3360.0 / 54 Calculating 74 * 50 Calculating 35 * 26 Calculating 75 * 15 Calculating 6 * 28 Calculating 4789.0 / 54 [WARN] [03/18/2014 09:35:00.045] [CalculatorWorkerSystem-akka.remote.default-remote-dispatcher-4] [akka.tcp:// CalculatorWorkerSystem@192.168.12.23:2552/system/endpointManager/reliableEndpointWriter-akka.tcp%3A%2F%2FCreationSystem%40192.168.14.136%3A2554-0] Association with remote system [akka.tcp:// CreationSystem@192.168.14.136:2554] has failed, address is now gated for [5000] ms. Reason is: [Disassociated]. [INFO] [03/18/2014 09:35:00.060] [CalculatorWorkerSystem-akka.actor.default-dispatcher-2] [akka://CalculatorWorkerSystem/system/transports/akkaprotocolmanager.tcp0/akkaProtocol-tcp%3A%2F%2FCalculatorWorkerSystem%40192.168.14.136%3A33691-1] Message [akka.remote.transport.ActorTransportAdapter$DisassociateUnderlying] from Actor[akka://CalculatorWorkerSystem/deadLetters] to Actor[akka://CalculatorWorkerSystem/system/transports/akkaprotocolmanager.tcp0/akkaProtocol-tcp%3A%2F%2FCalculatorWorkerSystem%40192.168.14.136%3A33691-1#-254990838] was not delivered. [1] dead letters encountered. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. [INFO] [03/18/2014 09:35:00.061] [CalculatorWorkerSystem-akka.actor.default-dispatcher-3] [akka://CalculatorWorkerSystem/system/endpointManager/reliableEndpointWriter-akka.tcp%3A%2F%2FCreationSystem%40192.168.14.136%3A2554-0/endpointWriter] Message [akka.actor.FSM$Timer] from Actor[akka://CalculatorWorkerSystem/deadLetters] to Actor[akka://CalculatorWorkerSystem/system/endpointManager/reliableEndpointWriter-akka.tcp%3A%2F%2FCreationSystem%40192.168.14.136%3A2554-0/endpointWriter#-257802128] was not delivered. [2] dead letters encountered. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. [WARN] [03/18/2014 09:35:05.130] [CalculatorWorkerSystem-akka.remote.default-remote-dispatcher-4] [akka.tcp:// CalculatorWorkerSystem@192.168.12.23:2552/system/endpointManager/reliableEndpointWriter-akka.tcp%3A%2F%2FCreationSystem%40192.168.14.136%3A2554-0] Association with remote system [akka.tcp:// CreationSystem@192.168.14.136:2554] has failed, address is now gated for [5000] ms. Reason is: [Association failed with [akka.tcp://CreationSystem@192.168.14.136:2554]]. This message continuously repeats on System A [WARN] [03/18/2014 09:36:00.427] [CalculatorWorkerSystem-akka.remote.default-remote-dispatcher-12] [akka.tcp:// CalculatorWorkerSystem@192.168.12.23:2552/system/endpointManager/reliableEndpointWriter-akka.tcp%3A%2F%2FCreationSystem%40192.168.14.136%3A2554-0] Association with remote system [akka.tcp:// CreationSystem@192.168.14.136:2554] has failed, address is now gated for [5000] ms. Reason is: [Association failed with [akka.tcp://CreationSystem@192.168.14.136:2554]]. Now if I try to start Creation on System B I see the following: Calculating 9329.0 / 80 [WARN] [03/18/2014 09:14:57.059]
Re: [akka-user] ActorSelection and Identify wildcard issue
The wildcard in /user/*/ChildActor will match 2 actors, both ChildCreationActor and LookingActor. The second path will not match and you get ActorIdentity with ref null. The first path will match your expected ChildActor. You will receive two ActorIdentity but you happen to use only the first. The order of these messages are undefined. Regards, Patrik On Tue, Mar 18, 2014 at 2:18 PM, Anatoliy Kaverin a.kave...@gmail.comwrote: Greetings, I've been using Akka in my Java based backend and faced some issue related to ActorSelection API if it is used from ActorContext (from inside Actor). For some reason I cannot find existing Actors via Identify message for specific paths. Imagine, that I have such Actor hierarchy: USER - Parent Actor - Child Actor USER - WorkerActor And let's assume that I would like to locate Child Actor via actor selection and use wildcard for the purpose. So, I'm building such path: /user/*/ChildActor For some reason - if this path is used for lookup via global Akka system context - ActorIdentity provides me ActorRef But, if I will perform the same lookup but from inside WorkerActor via ActorContext - Identify ActorRef is null. For me it seems like a bug and inconsistent behavior. I've provided code with different scenarios and the correct one. JUnit code with the issue https://gist.github.com/Anatolik/9619710 Another one point - for some reason if I call actorSelection.tell from inside Worker Actor - messages got delivered to the target ChildActor. But, I see some errors in dead letters office: 15:08:21.916 INFO [default-akka.actor.default-dispatcher-3] a.a.EmptyLocalActorRef - Message [java.lang.String] from TestActor[akka://default/user/$$a] to Actor[akka://default/user/$$a/ForwardingActor] was not delivered. [1] dead letters encountered. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. Any ideas? -- 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 akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout. -- Patrik Nordwall Typesafe http://typesafe.com/ - Reactive apps on the JVM Twitter: @patriknw -- 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 akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout.
Re: [akka-user] Cluster failover: preloaded actors
Hi, On Tue, Mar 18, 2014 at 11:45 AM, Eduardo Fernandes edu...@gmail.comwrote: Hi All. First of all many thanks for so efficient library. Very good job! We're analyzing Akka to support a cluster of heavy objects (a single actor could have a couple of gigs in RAM). I'm wondering if I could use some kind of 'preloaded' in ram slave actor that could be used if the 'master actor' fails. It would be something like an updated View or something like that which gets the main role after a failure. The journal and snapshots are ok but I'm afraid that the recovering time could be minimized if I used the 'slave' idea for heavy actors. After the backup object gets the main role a new 'slave' should be created from a normal snapshot and it would be prepared for the next failover cycle. I see what you are looking for, and it is not supported with current tools. It would be something that is periodically replaying the event stream like a view, but can then be changed into a normal writing processor. Have you thought about using an active standby? It would do the exact same thing as the primary, but the output (external side effects) would be ignored/filtered on the standby. It depends very much on your domain if that is a good or bad idea. Regards, Patrik I've tried to find out in the docs something to help me with this without success. Many thanks in advance for your help! -- 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 akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout. -- Patrik Nordwall Typesafe http://typesafe.com/ - Reactive apps on the JVM Twitter: @patriknw -- 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 akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout.
Re: [akka-user] Design question: low latency with availability and failure tolerance
Patrik -- great suggestions, thank you. On Tuesday, March 18, 2014 4:18:31 AM UTC-4, Patrik Nordwall wrote: Looks good. If Play 2 is unreachable you might introduce unwanted latency. You can consider replicating to more than one, or start the insert immediately and if that is quicker than then the ack from Play 2 you can respond to client immediately. Regards, Patrik On Mon, Mar 17, 2014 at 6:32 PM, Raman Gupta rocke...@gmail.comjavascript: wrote: I am building a transactional system requiring low latency, but is highly available and fault tolerant. I can ack the transaction immediately, as soon as I can guarantee that it won't be lost due to a single-node failure. Initial thoughts around the main components are Play Framework to receive requests, Akka (of course), and MongoDB as a data store. To avoid the latency cost of writing to disk, I was considering sending the received message to a second server for temporary storage in an actor's memory state: Play 1 - receive message from browser Play 1 - forward message to journal actor on Play 2 Play 2 - ack receipt to Play 1 Play 1 - ack receipt to browser (now that the message is safe in memory on two servers) -- user-perceived latency up to here Play 1 - insert into MongoDB Play 1 - upon confirmation of MongoDB insert, send delete to Play 2 Play 2 - deletes message in memory If Play 1 fails to insert into MongoDB within the time that Play 2 expects the delete, Play 2 attempts an upsert into MongoDB (upsert handles the situation in which the initial insert did work, but no delete was received). Akka-persistence could even be used on Play 2 to write the data to disk asynchronously for greater consistency -- though not perfect -- in case of multi-node failure. Thoughts? Is there a better / simpler way to accomplish this? Regards, Raman -- 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 akka-user+...@googlegroups.com javascript:. To post to this group, send email to akka...@googlegroups.comjavascript: . Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout. -- Patrik Nordwall Typesafe http://typesafe.com/ - Reactive apps on the JVM Twitter: @patriknw -- 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 akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout.
[akka-user] Re: Reconnect Remote Actor
Is the problem because I can't reconnect? When I kill the connection between two remotes on one side I can't reestablish the same connection (ip and port). Would I need to restart the apps on both systems to resort communications? Rob On Monday, March 17, 2014 3:42:01 PM UTC-4, Rob S wrote: Hi all, I am starting out with remote actors and I have run into an issue I can't seem to find an answer for. I have setup an application that performs distributed work on remote systems. Simply I have an actor system on one computer that sends a work request to a remote actor, the remote performs the work and returns the result. This process works perfectly. My issue comes in when I shutdown the requesting actor system and trying to start it up again. I get a connection refused on the remote system and I can not pass any messages to the remote system anymore. When I restart both applications everything works fine. I am using Akka 2.3.0 1. System A starts up 2. System B starts up and sends request to System A 3. System A sends a reply to System B 4. System B shutsdown 5. System B starts up and sends request to System A 6. System A outputs connection refused Rob -- 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 akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout.
Re: [akka-user] Cluster failover: preloaded actors
Many thanks Patrik for your post. Good shot. We could consider sending commands simultaneously to two processors (the main and a standby) and in case of timeout talking to the first we could talk to the second. After the main recovering we could return to the original situation. Maybe we could create both actors in different clusters in different machines to avoid single point of failure in case of machine crash. Many thanks again for your time and for any comment. Regards. El martes, 18 de marzo de 2014 17:12:43 UTC+1, Patrik Nordwall escribió: I see what you are looking for, and it is not supported with current tools. It would be something that is periodically replaying the event stream like a view, but can then be changed into a normal writing processor. Have you thought about using an active standby? It would do the exact same thing as the primary, but the output (external side effects) would be ignored/filtered on the standby. It depends very much on your domain if that is a good or bad idea. Regards, Patrik -- 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 akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout.
[akka-user] Is the default leveldb production ready?
I noticed that there is a java version of Leveldb included as the default persistence support for Akka. Is this recommended for production? Anyone have experience using it in production? Thanks Eric Weise -- 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 akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout.