activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Eric-AWL <eric.vinc...@atosorigin.com>
Subject connection.close(), on a brokenConnection resolves my problem
Date Fri, 03 Jul 2009 14:31:52 GMT

NEW

If I force a brokenConnection.close() into the onException callback, (called
when the "other" connection is broken), my process can now terminate
gracefully and is not blocked waiting threads die.

However there is a JMSException thrown by this "close" on a
brokenConnection. But it is not a big problem.

I think it is not the way ActiveMQ should work.


Eric-AWL


Eric-AWL wrote:
> 
> I think that I have some news.
> 
> The problem is more complex than I wrote initially (I wanted to be clear).
> 
> In fact, I have two ActiveMQ connections initialized in the same "main"
> JVM. One with an embedded broker, the second with a distant broker
> embedded in an "other" JVM. Some threads didn't die when I want to
> shutdown my "main" JVM in this condition :
> - I stop the "other" JVM gracefully. 
> - OnException is called on the "main JVM", but I don't close sessions nor
> close this connection on the main JVM, since I think that this is done
> automatically.
> - I want to stop the "main" JVM by closing session on the embedded
> connection, closing connection, and shutdown the embedded broker.
> 
> It is in this configuration that some sessions are not closed and my
> process doesn't want to stop gracefully.
> 
> I think that threads that don't die are finally affected to the broken
> connection.
> I can see that "ActiveMQ Connection Worker" thread associated with my
> broken connection is always active.
> 
> What is the best way to deal with this problem ?
> 
> Thank you
> Eric-AWL
> 
> 
> 
> 
> Gary Tully wrote:
>> 
>> session.close should do it!
>> 
>> 2009/6/19 Eric-AWL <eric.vincent@atosorigin.com>
>> 
>>>
>>> Hi !
>>>
>>> No, I don't use Web console at all. But I use JMX console.
>>>
>>> Do you know the conditions required for a thread session to terminate ?
>>> Should session.close() be enough or have we to wait for some kind of
>>> timeout
>>> (Inactivity) before the thread die ? ... I extensively use network of
>>> brokers too (in relatively complex configurations), and it is possible
>>> that
>>> some related consumers/producers continue to be active on other nodes.
>>>
>>> I am in a full AUTO_ACKNOWLEDGEMENT configuration.
>>>
>>>
>>> If you explain me when a session thread is supposed to die, I will try
>>> to
>>> find where is located the error.
>>>
>>>
>>>
>>>
>>> Gary Tully wrote:
>>> >
>>> > I wonder are you experiencing
>>> > https://issues.apache.org/activemq/browse/AMQ-2169
>>> >
>>> > 2009/6/17 Eric-AWL <eric.vincent@atosorigin.com>
>>> >
>>> >>
>>> >> Hi
>>> >>
>>> >> in 5.3-snapshot and 5.2 release, I think I correctly close
>>> >> consumers/producers/session and the threads like this one :
>>> >>
>>> >> ActiveMQ Session: ID:td0sib01s-32880-1245239727292-2:0:25
>>> >>
>>> >> doesn't seem to die.
>>> >>
>>> >> Is there something to do ?
>>> >>
>>> >> Eric-AWL
>>> >> --
>>> >> View this message in context:
>>> >>
>>> http://www.nabble.com/Do-you-know-when-ActiveMQ-Session-threads-dies---tp24071802p24071802.html
>>> >> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>>> >>
>>> >>
>>> >
>>> >
>>> > --
>>> > http://blog.garytully.com
>>> >
>>> > Open Source Integration
>>> > http://fusesource.com
>>> >
>>> >
>>>
>>> --
>>> View this message in context:
>>> http://www.nabble.com/Do-you-know-when-ActiveMQ-Session-threads-die---tp24071802p24109839.html
>>> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>>>
>>>
>> 
>> 
>> -- 
>> http://blog.garytully.com
>> 
>> Open Source Integration
>> http://fusesource.com
>> 
>> 
> 
> 

-- 
View this message in context: http://www.nabble.com/Do-you-know-when-ActiveMQ-Session-threads-die---tp24071802p24324078.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.


Mime
View raw message