Wow, so rapid fix! Thank you Rob!

I checked out the current upstream master and tried, then the thread
leak warning went away!
I'm looking forward to seeing 6.0.0 final release.

Thanks again,
Tomo

--
IGARASHI Tomohisa    mailto:[email protected]


On Thu, Jun 11, 2015 at 9:25 PM, Rob Godfrey <[email protected]> wrote:
> I've raised a JIRA and made a fix against the AMQP 0-8/9/9-1/10 client
> which gets rid of the ack flusher timer:
>
> https://issues.apache.org/jira/browse/QPID-6583
>
> -- Rob
>
> On 11 June 2015 at 11:15, Tomohisa Igarashi <[email protected]> wrote:
>> Hi Rob,
>>
>> Thank you for the immediate and clear response!
>>
>> I agree it doesn't cause a functional problem, just a cleanup issue on
>> client shutdown.
>> I just found qpid-jms-client and it looks like a successor of the one
>> in qpid-client. Are you OK with filing a JIRA for this issue on
>> QPIDJMS?
>> (I also tried with qpid-jms-client 0.2.0 and same result)
>>
>> Thanks,
>> Tomo
>>
>>
>> --
>> IGARASHI Tomohisa    mailto:[email protected]
>>
>>
>> On Thu, Jun 11, 2015 at 4:48 PM, Rob Godfrey <[email protected]> wrote:
>>> Hi Tomo,
>>>
>>> looking at the code (AMQSession_0_10.java), it seems that the
>>> ack-flusher is created here (line 75):
>>>
>>> private static Timer timer = new Timer("ack-flusher", true);
>>>
>>> That is a single (java.util.)Timer is shared across all sessions on
>>> *all* connections - the timer is not connection specific.  Since it is
>>> shared by all connections, it is not cancel()led when a connection is
>>> close()ed.  The Timer is created with isDaemon being true, so the fact
>>> that the thread is never stopped wouldn't normally be an issue.
>>>
>>> It would need a code change on our side to change this behaviour.
>>>
>>> -- Rob
>>>
>>> On 11 June 2015 at 09:30, Tomohisa Igarashi <[email protected]> wrote:
>>>> Hi,
>>>>
>>>> When I run Qpid Java client from exec-maven-plugin, I get this warning
>>>> complaining about remaining ack-flusher thread:
>>>>
>>>> ===================
>>>> [WARNING] thread
>>>> Thread[ack-flusher,5,org.switchyard.quickstarts.camel.amqp.binding.QpidClient]
>>>> was interrupted but is still alive after waiting at least 15000msecs
>>>> [WARNING] thread
>>>> Thread[ack-flusher,5,org.switchyard.quickstarts.camel.amqp.binding.QpidClient]
>>>> will linger despite being asked to die via interruption
>>>> [WARNING] NOTE: 1 thread(s) did not finish despite being asked to  via
>>>> interruption. This is not a problem with exec:java, it is a problem
>>>> with the running code. Although not serious, it should be remedied.
>>>> [WARNING] Couldn't destroy threadgroup
>>>> org.codehaus.mojo.exec.ExecJavaMojo$IsolatedThreadGroup[name=org.switchyard.quickstarts.camel.amqp.binding.QpidClient,maxpri=10]
>>>> java.lang.IllegalThreadStateException
>>>> ===================
>>>>
>>>> So ack-flusher thread is not stopped even after connection is closed.
>>>> Is there a way to stop it safely?
>>>>
>>>> Whole client code is here:
>>>> https://github.com/igarashitm/switchyard/blob/master/quickstarts/camel-amqp-binding/src/test/java/org/switchyard/quickstarts/camel/amqp/binding/QpidClient.java
>>>>
>>>> I tried adding connection.close() on this code with qpid-client 0.32,
>>>> but I got same warning.
>>>>
>>>> Thanks,
>>>> Tomo
>>>>
>>>> --
>>>> IGARASHI Tomohisa    mailto:[email protected]
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: [email protected]
>>>> For additional commands, e-mail: [email protected]
>>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: [email protected]
>>> For additional commands, e-mail: [email protected]
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [email protected]
>> For additional commands, e-mail: [email protected]
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to