John,

  After I upgrade AKKA to 2.4.4 and AKKA persistence cassandra to 0.12, the 
system.terminate() works well now.

Thank you very much for your help!

Emily

On Monday, April 18, 2016 at 1:46:52 PM UTC-5, Johan Andrén wrote:
>
> Hi Emily,
>
> That specific stack trace is just the threadpool parking the thread 
> waiting for work, the if there is a thread that is occupied with something, 
> it would show some of your application classes and methods in it's stack 
> trace.
>
> Are you using the latest Cassandra driver? Any special configuration for 
> cassandra? It sounds unlikely, but of course not impossible, that there 
> would be something in the Cassandra driver blocking and stopping your actor 
> system from stopping.
>
> --
> John Andrén
> Akka Team, Lightbend Inc.
>
> On Monday, April 18, 2016 at 7:55:14 PM UTC+2, Yan Pei wrote:
>>
>> I've simplified the Application to test this scenario by just printing 
>> out simple message inside 
>> the AbstractPersistentActorWithAtLeastOnceDelivery actor but with cassandra 
>> configuration inside application.conf.
>>
>> After changing the persistence from the cassandra to leveldb, the 
>> system.terminate() works well. 
>>
>> So looks like the cassandra diver is the blocking tread.
>>
>> Should I do anything before calling system.terminate() once I enable the 
>> cassandra configuration?
>>
>> Thanks,
>> Emily
>>
>>
>> On Monday, April 18, 2016 at 10:59:08 AM UTC-5, Johan Andrén wrote:
>>>
>>> Hi Emily,
>>>
>>> If an actor is blocking a thread and never returns it to the ActorSystem 
>>> cannot do much about it, and if you try to terminate the ActorSystem it 
>>> will never complete terminating. 
>>>
>>> Blocking a thread could be actual processing that never stops or just 
>>> takes a very long time, being stuck reading or writing some blocking 
>>> resource, etc. You should be able to see what is going on by connecting to 
>>> the JVM and taking a thread dump - this should show at least one thread 
>>> having a call stack into one of your actors.
>>>
>>> --
>>> Johan Andrén
>>> Akka Team, Lightbend Inc.
>>>
>>>
>>> On Monday, April 18, 2016 at 5:53:17 PM UTC+2, Yan Pei wrote:
>>>>
>>>> ActorSystem.terminate() works well with certain number of actors inside 
>>>> the system.
>>>>
>>>> Once I increase the actor number, the system().terminate() couldn't 
>>>> terminate the system, the application just hung on there and I have to 
>>>> manually kill it.
>>>> (running from Eclipse)
>>>>
>>>> From the log it's trying to:
>>>> [DEBUG] [04/18/2016 10:44:58.530] 
>>>> [ActorSystemmainaroraid1-akka.actor.default-di
>>>> spatcher-2] [EventStream] shutting down: StandardOutLogger started
>>>>
>>>> Anyone knows what's going on?
>>>>
>>>> Thanks very much!
>>>> Emily
>>>>
>>>

-- 
>>>>>>>>>>      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 https://groups.google.com/group/akka-user.
For more options, visit https://groups.google.com/d/optout.

Reply via email to