Remote actors and garbage collection

266 views
Skip to first unread message

gutzeit

unread,
Sep 8, 2011, 7:46:30 AM9/8/11
to akka...@googlegroups.com
In my application I use RemoteActors (typed actors) very intensively and lately during load tests I've discovered an interesting thing.

Some time before I had a user group discussion with Victor about the need to "stop()" remote actor instance on the client side and the answer was that the actors die when connection drops and no need to stop them on the client.

But what if the connection never drops (client speaks with the server all the time) ? What I see now is that the memory is full of of actor proxy instances which are not being collected and cause out of memory errors.

How should I approach this issue ?

Thanks in advance.

Jonas Bonér

unread,
Sep 8, 2011, 7:52:28 AM9/8/11
to akka...@googlegroups.com
Open a ticket: http://akka.io/docs/akka/snapshot/project/issue-tracking.html#creating-tickets

Thanks.

> --
> You received this message because you are subscribed to the Google Groups
> "Akka User List" group.
> To view this discussion on the web visit
> https://groups.google.com/d/msg/akka-user/-/N95ljaLjp6gJ.
> To post to this group, send email to akka...@googlegroups.com.
> To unsubscribe from this group, send email to
> akka-user+...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/akka-user?hl=en.
>

--
Jonas Bonér
CTO
Typesafe <http://www.typesafe.com/> - Enterprise-Grade Scala from the
Experts
Phone: +46 733 777 123
Twitter: @jboner <http://twitter.com/jboner>
Google+: http://gplus.to/jboner

gutzeit

unread,
Sep 8, 2011, 8:10:15 AM9/8/11
to akka...@googlegroups.com

√iktor Ҡlang

unread,
Sep 8, 2011, 8:14:23 AM9/8/11
to akka...@googlegroups.com
On Thu, Sep 8, 2011 at 1:46 PM, gutzeit <gut...@gmail.com> wrote:

Didn't my work-around work?
 

Thanks in advance.

--
You received this message because you are subscribed to the Google Groups "Akka User List" group.
To view this discussion on the web visit https://groups.google.com/d/msg/akka-user/-/N95ljaLjp6gJ.
To post to this group, send email to akka...@googlegroups.com.
To unsubscribe from this group, send email to akka-user+...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/akka-user?hl=en.



--
Viktor Klang

Akka Tech Lead
Typesafe - Enterprise-Grade Scala from the Experts

Twitter: @viktorklang

gutzeit

unread,
Sep 8, 2011, 8:17:55 AM9/8/11
to akka...@googlegroups.com
Yes, it worked. I am not stopping the remote actors anymore.

I think its a new issue since the same is observed for both remote and local actors (and local ones I do stop). The Actor class itself is being cleaned but the proxy object is being left there. 

√iktor Ҡlang

unread,
Sep 8, 2011, 8:40:05 AM9/8/11
to akka...@googlegroups.com
On Thu, Sep 8, 2011 at 2:17 PM, gutzeit <gut...@gmail.com> wrote:
Yes, it worked. I am not stopping the remote actors anymore.

Hmmm, I don't remember, but didn't it work to define a stop method on your typed actor interface and then have the implementation call TypedActor.stop(getContext().getSelf())?
 

I think its a new issue since the same is observed for both remote and local actors (and local ones I do stop). The Actor class itself is being cleaned but the proxy object is being left there. 

Yeah, that sounds like a bug, it should remove the proxy when stopped.
Unless it's being referred to by something else?
 

--
You received this message because you are subscribed to the Google Groups "Akka User List" group.
To view this discussion on the web visit https://groups.google.com/d/msg/akka-user/-/tz5MzYNKOAYJ.

To post to this group, send email to akka...@googlegroups.com.
To unsubscribe from this group, send email to akka-user+...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/akka-user?hl=en.

gutzeit

unread,
Sep 8, 2011, 8:47:04 AM9/8/11
to akka...@googlegroups.com
1. That was another issue :)
2. Nothing else holds it, its pretty constant.

√iktor Ҡlang

unread,
Sep 8, 2011, 8:49:45 AM9/8/11
to akka...@googlegroups.com
On Thu, Sep 8, 2011 at 2:47 PM, gutzeit <gut...@gmail.com> wrote:
1. That was another issue :)
2. Nothing else holds it, its pretty constant.

If nothing else holds it, it would be garbage collected. So obviously something is holding onto it.
 

--
You received this message because you are subscribed to the Google Groups "Akka User List" group.
To view this discussion on the web visit https://groups.google.com/d/msg/akka-user/-/b2x_YvwkwzEJ.

To post to this group, send email to akka...@googlegroups.com.
To unsubscribe from this group, send email to akka-user+...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/akka-user?hl=en.

gutzeit

unread,
Sep 8, 2011, 8:54:39 AM9/8/11
to akka...@googlegroups.com
I mean nothing in my code holds it :)

√iktor Ҡlang

unread,
Sep 8, 2011, 8:55:56 AM9/8/11
to akka...@googlegroups.com
On Thu, Sep 8, 2011 at 2:54 PM, gutzeit <gut...@gmail.com> wrote:
I mean nothing in my code holds it :)

Have you've opeened it up in YourKit or something to see what's holding onto it?
(the easier it is for us to fix it, the faster we'll be able to get to it)
 

--
You received this message because you are subscribed to the Google Groups "Akka User List" group.
To view this discussion on the web visit https://groups.google.com/d/msg/akka-user/-/fOJ3bDQxjLgJ.

To post to this group, send email to akka...@googlegroups.com.
To unsubscribe from this group, send email to akka-user+...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/akka-user?hl=en.

gutzeit

unread,
Sep 8, 2011, 8:57:09 AM9/8/11
to akka...@googlegroups.com
Profile shows that it is being held by:

akka.actor.AspectInitRegistry$

gutzeit

unread,
Sep 8, 2011, 9:02:04 AM9/8/11
to akka...@googlegroups.com
Actually there are two types of proxy objects:

1. Some long name, ends with JointPoint, those are being help by some "OPTIMIZED_JOIN_POINT".
2. Without JointPoint at the end, held by the akka.actor.AspectInitRegistry$

Those come in pairs, always.

√iktor Ҡlang

unread,
Sep 8, 2011, 9:03:05 AM9/8/11
to akka...@googlegroups.com

Yeah, I think that it's probably the backing actor that gets stopped, but not the proxy.
 

--
You received this message because you are subscribed to the Google Groups "Akka User List" group.
To view this discussion on the web visit https://groups.google.com/d/msg/akka-user/-/pWFO9_o_seYJ.

To post to this group, send email to akka...@googlegroups.com.
To unsubscribe from this group, send email to akka-user+...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/akka-user?hl=en.

√iktor Ҡlang

unread,
Sep 8, 2011, 9:07:34 AM9/8/11
to akka...@googlegroups.com
On Thu, Sep 8, 2011 at 1:46 PM, gutzeit <gut...@gmail.com> wrote:
In my application I use RemoteActors (typed actors) very intensively and lately during load tests I've discovered an interesting thing.

Some time before I had a user group discussion with Victor about the need to "stop()" remote actor instance on the client side and the answer was that the actors die when connection drops and no need to stop them on the client.

Bear in mind that this was only true for per-session remote typed actors.
 

But what if the connection never drops (client speaks with the server all the time) ? What I see now is that the memory is full of of actor proxy instances which are not being collected and cause out of memory errors.

How should I approach this issue ?

Thanks in advance.

--
You received this message because you are subscribed to the Google Groups "Akka User List" group.
To view this discussion on the web visit https://groups.google.com/d/msg/akka-user/-/N95ljaLjp6gJ.

To post to this group, send email to akka...@googlegroups.com.
To unsubscribe from this group, send email to akka-user+...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/akka-user?hl=en.

gutzeit

unread,
Sep 8, 2011, 9:18:58 AM9/8/11
to akka...@googlegroups.com
Currrenty I prepare lots of actors on the server side, with some "indexed" name and then access them from the client, round robin (all of that since there is no pool implementation in java).

So server side actors are always alive and I never stop them. Anyways its not related to the current problem.

√iktor Ҡlang

unread,
Sep 8, 2011, 9:28:49 AM9/8/11
to akka...@googlegroups.com
On Thu, Sep 8, 2011 at 3:18 PM, gutzeit <gut...@gmail.com> wrote:
Currrenty I prepare lots of actors on the server side, with some "indexed" name and then access them from the client, round robin (all of that since there is no pool implementation in java).

So server side actors are always alive and I never stop them. Anyways its not related to the current problem.

Ah, so the problem is that they leak on the client?
 

--
You received this message because you are subscribed to the Google Groups "Akka User List" group.
To view this discussion on the web visit https://groups.google.com/d/msg/akka-user/-/9Ssr2wXKYv8J.

To post to this group, send email to akka...@googlegroups.com.
To unsubscribe from this group, send email to akka-user+...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/akka-user?hl=en.

√iktor Ҡlang

unread,
Sep 8, 2011, 10:02:25 AM9/8/11
to akka...@googlegroups.com


2011/9/8 √iktor Ҡlang <viktor...@gmail.com>



On Thu, Sep 8, 2011 at 3:18 PM, gutzeit <gut...@gmail.com> wrote:
Currrenty I prepare lots of actors on the server side, with some "indexed" name and then access them from the client, round robin (all of that since there is no pool implementation in java).

So server side actors are always alive and I never stop them. Anyways its not related to the current problem.

Ah, so the problem is that they leak on the client?

I need clarification for this, do you have a leak server side or client side?
 
 

--
You received this message because you are subscribed to the Google Groups "Akka User List" group.
To view this discussion on the web visit https://groups.google.com/d/msg/akka-user/-/9Ssr2wXKYv8J.

To post to this group, send email to akka...@googlegroups.com.
To unsubscribe from this group, send email to akka-user+...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/akka-user?hl=en.



--
Viktor Klang

Akka Tech Lead
Typesafe - Enterprise-Grade Scala from the Experts

Twitter: @viktorklang

gutzeit

unread,
Sep 8, 2011, 12:36:09 PM9/8/11
to akka...@googlegroups.com
The same occurs when using remote actors (then the leak occurs on client side) and when using normal local typedactors (not related to remote).
I am doing load tests right now and it causes me lots of headache :(

√iktor Ҡlang

unread,
Sep 8, 2011, 1:22:31 PM9/8/11
to akka...@googlegroups.com

If you aren't stopping local typed actors, then yes, it's going to leak.
The remote ones, if you're using client managed, you need to stop them on the client. For per-session and server managed they should not leak on the client.

> --
> You received this message because you are subscribed to the Google Groups "Akka User List" group.
> To view this discussion on the web visit https://groups.google.com/d/msg/akka-user/-/mEpcMui8Dm4J.

gutzeit

unread,
Sep 8, 2011, 7:55:27 PM9/8/11
to akka...@googlegroups.com
Ok, thats clear. But as I said the same leak occurs also for LOCAL TypedActors, which are being stopped.

gutzeit

unread,
Sep 8, 2011, 9:41:39 PM9/8/11
to akka...@googlegroups.com
So, two scenarios:

1. Local typed actor.

- Some actor = TypedActor.newInstance()....
- do some action
- TypedActor.stop(some)

Result - Leaks proxy objects.

2. Remote actor (remotly managed, not per session)

- Some actor = Actors.remote().typedActorFor(....)
- do some action

Result - Leaks proxy objects.

In both scenarios the proxies are being held by AspectInitRegistry.

√iktor Ҡlang

unread,
Sep 9, 2011, 1:14:53 AM9/9/11
to akka...@googlegroups.com
Thanks for the clarification, we'll have a look at it.

Cheers,


--
You received this message because you are subscribed to the Google Groups "Akka User List" group.
To view this discussion on the web visit https://groups.google.com/d/msg/akka-user/-/9yzwz9a2_HkJ.

To post to this group, send email to akka...@googlegroups.com.
To unsubscribe from this group, send email to akka-user+...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/akka-user?hl=en.

gutzeit

unread,
Sep 10, 2011, 4:36:14 AM9/10/11
to akka...@googlegroups.com
Any estimation on when this can be checked/fixed ?

valodzka

unread,
Sep 11, 2011, 8:01:37 AM9/11/11
to Akka User List
I've discovered same (or similar) issue: Remote actor, per session,
leak at server side:
Here screenshot from MAT:

https://img.skitch.com/20110911-t8ycx9wimamt23h6ufi7r2gw4s.png
> Typesafe <http://www.typesafe.com/> - Enterprise-Grade Scala from the
> Experts
>
> Twitter: @viktorklang

√iktor Ҡlang

unread,
Sep 11, 2011, 9:40:20 AM9/11/11
to akka...@googlegroups.com
On Sun, Sep 11, 2011 at 2:01 PM, valodzka <valo...@gmail.com> wrote:
I've discovered same (or similar) issue: Remote actor, per session,
leak at server side:
Here screenshot from MAT:

https://img.skitch.com/20110911-t8ycx9wimamt23h6ufi7r2gw4s.png


If it still has a mailbox, then it's still running.
And if you don't stop it, and don't shut the connection down, of course it will still be there.

Do you have a steps to reproduce?

Cheers,

 



--
Typesafe - Enterprise-Grade Scala from the Experts

Twitter: @viktorklang

valodzka

unread,
Sep 11, 2011, 10:08:56 AM9/11/11
to Akka User List
Hi,

MAT shows that there are 170 objects of type
akka.dispatch.ExecutorBasedEventDrivenDispatcher$$anon$4, but is just
impossible - I have only 5 remote clients and it's very unlikely that
they doesn't close connections - every client opens just one
connection and immediately exit (restart OS process) if there are any
problems.

I'll try to reproduce it on smaller application and will post results.

On Sep 11, 4:40 pm, √iktor Ҡlang <viktor.kl...@gmail.com> wrote:

√iktor Ҡlang

unread,
Sep 11, 2011, 11:23:39 AM9/11/11
to akka...@googlegroups.com

Do you call Actor.remote.shutdown() before terminating your clients?

Cheers,
V

valodzka

unread,
Sep 11, 2011, 11:53:50 AM9/11/11
to Akka User List
No, I don't. I thought closing connection by OS is enough.

Is it required? If so hanging client/network problems and so on will
cause memory leaks in server...

On Sep 11, 6:23 pm, √iktor Ҡlang <viktor.kl...@gmail.com> wrote:
> Do you call Actor.remote.shutdown() before terminating your clients?
>
> Cheers,
> V

√iktor Ҡlang

unread,
Sep 11, 2011, 2:22:18 PM9/11/11
to akka...@googlegroups.com

Do you get the client disconnection event on the server properly?

valodzka

unread,
Sep 12, 2011, 7:36:52 PM9/12/11
to Akka User List

I definitely getting postStop called (at least in most cases). Is it
enough? Or I should check for event?

I found one problem in my code - sometimes NullPointerException was
thrown in postStop. Can it cause leak?

One, other question, not sure related to initial: I getting following
exception sometimes (on server side, using register per session):

09-12 21:15:45 ERROR [akka:event-driven:dispatcher:event:handler-7]
akka.event.slf4j.Slf4jEventHandler| -
[akka.remote.netty.RemoteServerHandler]
[Actor has not been started, you need to invoke
'actor.start()' before using it]
[akka.actor.ActorInitializationException: Actor has not been
started, you need to invoke 'actor.start()' before using it
[inter_60ceebf0-dd84-11e0-a591-406186becf7d]
at akka.actor.ScalaActorRef$class.$bang(ActorRef.scala:1312)
at akka.actor.LocalActorRef.$bang(ActorRef.scala:586)
at
akka.remote.netty.RemoteServerHandler.dispatchToActor(NettyRemoteSupport.scala:
999)
at
akka.remote.netty.RemoteServerHandler.handleRemoteMessageProtocol(NettyRemoteSupport.scala:
963)
at
akka.remote.netty.RemoteServerHandler.messageReceived(NettyRemoteSupport.scala:
946)
at
org.jboss.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:
80)
at
org.jboss.netty.channel.StaticChannelPipeline.sendUpstream(StaticChannelPipeline.java:
362)
at org.jboss.netty.channel.StaticChannelPipeline
$StaticChannelHandlerContext.sendUpstream(StaticChannelPipeline.java:
514)
at
org.jboss.netty.handler.execution.ChannelEventRunnable.run(ChannelEventRunnable.java:
69)
at
org.jboss.netty.handler.execution.OrderedMemoryAwareThreadPoolExecutor
$ChildExecutor.run(OrderedMemoryAwareThreadPoolExecutor.java:316)
at java.util.concurrent.ThreadPoolExecutor
$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor
$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)

at akka.actor.ScalaActorRef$class.$bang(ActorRef.scala:1312)
at akka.actor.LocalActorRef.$bang(ActorRef.scala:586)
at
akka.remote.netty.RemoteServerHandler.dispatchToActor(NettyRemoteSupport.scala:
999)
at
akka.remote.netty.RemoteServerHandler.handleRemoteMessageProtocol(NettyRemoteSupport.scala:
963)
at
akka.remote.netty.RemoteServerHandler.messageReceived(NettyRemoteSupport.scala:
946)
at
org.jboss.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:
80)
at
org.jboss.netty.channel.StaticChannelPipeline.sendUpstream(StaticChannelPipeline.java:
362)
at org.jboss.netty.channel.StaticChannelPipeline
$StaticChannelHandlerContext.sendUpstream(StaticChannelPipeline.java:
514)
at
org.jboss.netty.handler.execution.ChannelEventRunnable.run(ChannelEventRunnable.java:
69)
at
org.jboss.netty.handler.execution.OrderedMemoryAwareThreadPoolExecutor
$ChildExecutor.run(OrderedMemoryAwareThreadPoolExecutor.java:316)
at java.util.concurrent.ThreadPoolExecutor
$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor
$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)

How it possible? It server side and I definitely started remote server
module (because message have been recieved)

On Sep 11, 9:22 pm, √iktor Ҡlang <viktor.kl...@gmail.com> wrote:
> Do you get the client disconnection event on the server properly?

gutzeit

unread,
Sep 12, 2011, 10:38:50 PM9/12/11
to akka...@googlegroups.com
This is what profiler tells me after overnight load test:

"Name","Number of Objects","Shallow Size"
"akka.actor.RemoteActorRef","6058667","920917384"
"akka.actor.ServerManagedTypedActorAspect","6058667","484693360"
"akka.actor.AspectInit","6058718","339288208"
"akka.util.Switch","12117338","290816112"
"akka.actor.TypedActor$MyInvocationHandler$1","6058667","96938672"

Just a reminder, I have a server managed actors which are always living.
I connect from the client and do not stop the actor (otherwise they will die on the server).

The question is what will make the RemoteActorRef go away (on the client machine) if I do not stop it ?

√iktor Ҡlang

unread,
Sep 13, 2011, 1:36:30 AM9/13/11
to akka...@googlegroups.com
On Tue, Sep 13, 2011 at 1:36 AM, valodzka <valo...@gmail.com> wrote:

I definitely getting postStop called (at least in most cases). Is it
enough? Or I should check for event?

I found one problem in my code - sometimes NullPointerException was
thrown in postStop. Can it cause leak?

Might be. life cycle callbacks shouldn't throw exceptions AFAIK.
 

Which version of Akka and what isthe code to reproduce?
 



--
Typesafe - Enterprise-Grade Scala from the Experts

Twitter: @viktorklang

gutzeit

unread,
Sep 13, 2011, 3:42:05 AM9/13/11
to akka...@googlegroups.com
Can please someone comment on this ? Please, please, please ? :)

Jonas Bonér

unread,
Sep 13, 2011, 5:04:52 AM9/13/11
to akka...@googlegroups.com
Comment on what?

On 13 sep 2011, at 09:42, gutzeit wrote:

Can please someone comment on this ? Please, please, please ? :)

--
You received this message because you are subscribed to the Google Groups "Akka User List" group.
To view this discussion on the web visit https://groups.google.com/d/msg/akka-user/-/Y0vd_YJZbxoJ.

To post to this group, send email to akka...@googlegroups.com.
To unsubscribe from this group, send email to akka-user+...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/akka-user?hl=en.

----
Jonas Bonér
CTO 

Typesafe - Enterprise-Grade Scala from the Experts
Phone: +46 733 777 123
Twitter: @jboner

gutzeit

unread,
Sep 13, 2011, 5:24:14 AM9/13/11
to akka...@googlegroups.com
On this:

valodzka

unread,
Sep 14, 2011, 8:46:28 AM9/14/11
to Akka User List
I've fixed NPE in my code and now I got NPE in akka core. I'm using
1.1.3, It's simple server side register per session configuration. I
can't give exact code to reproduce because it happens on our servers
irregularly about one time a day.

09-14 04:12:21 ERROR [akka:event-driven:dispatcher:event:handler-11]
akka.event.slf4j.Slf4jEventHandler| -
[akka.remote.netty.RemoteServerHandler]
[null]
[java.lang.NullPointerException
at
akka.dispatch.ExecutorBasedEventDrivenDispatcher.dispatch(ExecutorBasedEventDrivenDispatcher.scala:
98)
at akka.dispatch.MessageDispatcher
$class.dispatchMessage(MessageHandling.scala:88)
at
akka.dispatch.ExecutorBasedEventDrivenDispatcher.dispatchMessage(ExecutorBasedEventDrivenDispatcher.scala:
68)
at
akka.actor.LocalActorRef.postMessageToMailboxAndCreateFutureResultWithTimeout(ActorRef.scala:
843)
at
akka.remote.netty.RemoteServerHandler.dispatchToActor(NettyRemoteSupport.scala:
1000)
]


On Sep 13, 8:36 am, √iktor Ҡlang <viktor.kl...@gmail.com> wrote:

√iktor Ҡlang

unread,
Sep 14, 2011, 8:56:19 AM9/14/11
to akka...@googlegroups.com
You're sending a message to an actor that is shutting down.
Typesafe - Enterprise-Grade Scala from the Experts

Twitter: @viktorklang

Jonas Bonér

unread,
Sep 15, 2011, 5:04:13 AM9/15/11
to akka...@googlegroups.com, gut...@gmail.com
I assume you are using server-manged typed actors.
Are you registering them per-session?

If not, why are you creating so many typed actor services, the idea is
to create a single one or a few ones and then fan out from this one.

I will add code to automatically unregister per-session actors, but
not the other ones, those you need to unregister yourself using:
Actor.remote.unregisterTypedActor("handle").

Please let me know ASAP.

/Jonas

> --
> You received this message because you are subscribed to the Google Groups
> "Akka User List" group.
> To view this discussion on the web visit

> https://groups.google.com/d/msg/akka-user/-/crKmhaRH_owJ.


> To post to this group, send email to akka...@googlegroups.com.
> To unsubscribe from this group, send email to
> akka-user+...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/akka-user?hl=en.
>

--
Jonas Bonér
CTO
Typesafe <http://www.typesafe.com/> - Enterprise-Grade Scala from the


Experts
Phone: +46 733 777 123

Twitter: @jboner <http://twitter.com/jboner>
Google+: http://gplus.to/jboner

√iktor Ҡlang

unread,
Sep 16, 2011, 5:05:19 AM9/16/11
to akka...@googlegroups.com
This problem seems suspiciously similar to this: https://groups.google.com/group/akka-user/browse_thread/thread/333feaac6df2dcc7/4ccfa7c5655fc755?#4ccfa7c5655fc755

On Tue, Sep 13, 2011 at 11:24 AM, gutzeit <gut...@gmail.com> wrote:
On this:
--
You received this message because you are subscribed to the Google Groups "Akka User List" group.
To view this discussion on the web visit https://groups.google.com/d/msg/akka-user/-/crKmhaRH_owJ.

To post to this group, send email to akka...@googlegroups.com.
To unsubscribe from this group, send email to akka-user+...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/akka-user?hl=en.



--
Viktor Klang

Akka Tech Lead
Typesafe - Enterprise-Grade Scala from the Experts

Twitter: @viktorklang

valodzka

unread,
Sep 16, 2011, 6:14:13 AM9/16/11
to Akka User List
Thank you, it was cause of all other problems.

And I hope exceptions will be more descriptive in new versions :)
> > ]
> ...
>
> read more »

Jonas Bonér

unread,
Sep 16, 2011, 6:17:55 AM9/16/11
to akka...@googlegroups.com

Open a ticket to improve it

--
Jonas Bonér
CTO

Typesafe - Enterprise-Grade Scala from the Experts

Phone: +46 733 777 123
Twitter: @jboner

> To unsubscribe from this group, send email to akka-user+...@googlegroups.com.

valodzka

unread,
Sep 16, 2011, 6:23:24 AM9/16/11
to Akka User List
I checked all links under 'Project' on akka.io but havent found issue
tracker. :(
Is it top secret information?

On Sep 16, 1:17 pm, Jonas Bonér <jo...@jonasboner.com> wrote:
> Open a ticket to improve it
>
> --
> Jonas Bonér
> CTO
> Typesafe - Enterprise-Grade Scala from the Experts
> Phone: +46 733 777 123
> Twitter: @jboner
> ...
>
> read more »

√iktor Ҡlang

unread,
Sep 16, 2011, 7:06:37 AM9/16/11
to akka...@googlegroups.com
On Fri, Sep 16, 2011 at 12:23 PM, valodzka <valo...@gmail.com> wrote:
I checked all links under 'Project' on akka.io but havent found issue
tracker. :(
Is it top secret information?

It's rather visible in the docs: http://akka.io/docs/akka/1.2-RC6/

:-)

 
> ...
>
> read more »

--
You received this message because you are subscribed to the Google Groups "Akka User List" group.
To post to this group, send email to akka...@googlegroups.com.
To unsubscribe from this group, send email to akka-user+...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/akka-user?hl=en.




--
Viktor Klang

Akka Tech Lead
Typesafe - Enterprise-Grade Scala from the Experts

Twitter: @viktorklang

valodzka

unread,
Sep 16, 2011, 4:14:35 PM9/16/11
to Akka User List
https://www.assembla.com/spaces/akka-modules/tickets/740-error-messages-on-shutdown-isn-t-informative

On Sep 16, 1:17 pm, Jonas Bonér <jo...@jonasboner.com> wrote:
> Open a ticket to improve it
>
> --
> Jonas Bonér
> CTO
> Typesafe - Enterprise-Grade Scala from the Experts
> Phone: +46 733 777 123
> Twitter: @jboner
> ...
>
> read more »

Jonas Bonér

unread,
Sep 16, 2011, 4:41:20 PM9/16/11
to akka...@googlegroups.com

Thanks

--
Jonas Bonér
CTO
Typesafe - Enterprise-Grade Scala from the Experts
Phone: +46 733 777 123
Twitter: @jboner

Dima Gutzeit

unread,
Sep 17, 2011, 2:15:27 PM9/17/11
to Jonas Bonér, akka...@googlegroups.com
I use server managed typed actors indeed and they are not per session. 
In fact due to lack of typed actors pool in java API I create few hundreds actors on the server side and then consume them from the client in a round robin fashion.

The code that you are talking about "Actor.remote.unregisterTypedActor()" should be executed on the client side after finish using the remote typed actor ?

Thanks in advance for you kind help.

Regards,
Dima Gutzeit.
--
-- Dima Gutzeit.

Jonas Bonér

unread,
Sep 17, 2011, 2:50:48 PM9/17/11
to Dima Gutzeit, akka...@googlegroups.com

Yes. You need to unregister the actor yourself. It is not possible for Akka to know when it can safely unregister your actor.

--
Jonas Bonér
CTO
Typesafe - Enterprise-Grade Scala from the Experts


Phone: +46 733 777 123
Twitter: @jboner

Dima Gutzeit

unread,
Sep 19, 2011, 3:32:37 AM9/19/11
to Jonas Bonér, akka...@googlegroups.com
Jonas,

I can see only:

Actors.remote().unregisterTypedActor(String id) and there seems not be any unregisterTypedActor using ActorRef.
Am I missing something ?

Thanks in advance.
Regards,
Dima Gutzeit.
--
-- Dima Gutzeit.

gutzeit

unread,
Sep 20, 2011, 2:50:17 AM9/20/11
to akka...@googlegroups.com
No I do not think its even close :) I do not use TypedActorConfigurators or anything like that.

Just registering actors on Akka server and consuming them from Akka client, as a remote client. No way of "letting go" of the remoteactorref after it was created on the client side :(.
Reply all
Reply to author
Forward
0 new messages