You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@activemq.apache.org by "ASF subversion and git services (JIRA)" <ji...@apache.org> on 2015/11/27 13:36:11 UTC

[jira] [Commented] (AMQ-3529) Calling Thread.interrupt while in MessageConsumer#receive(timeout) generates java.io.InterruptedIOException and leaks Connection

    [ https://issues.apache.org/jira/browse/AMQ-3529?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15029829#comment-15029829 ] 

ASF subversion and git services commented on AMQ-3529:
------------------------------------------------------

Commit 0a12bcb928f151b5ace9a0cffc34ec717b6a8e9c in activemq's branch refs/heads/master from [~gtully]
[ https://git-wip-us.apache.org/repos/asf?p=activemq.git;h=0a12bcb ]

https://issues.apache.org/jira/browse/AMQ-2191 https://issues.apache.org/jira/browse/AMQ-3529 - rework fixes to remove uncertanty from dealing with intettuptedexception. Sync requests will trap interrupts that ocurr while waiting for responses and fail the connection with an interruptedioexception. Interrupts pending before requests will be suppressed, allowing possible clean shutdown. It is not safe to replay openwire ops b/c they are not idempotent, the only safe option is to have a teardown of the broker side state from a close


> Calling Thread.interrupt while in MessageConsumer#receive(timeout) generates java.io.InterruptedIOException and leaks Connection 
> ---------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: AMQ-3529
>                 URL: https://issues.apache.org/jira/browse/AMQ-3529
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: JMS client
>    Affects Versions: 5.5.0
>            Reporter: Philippe Mouawad
>            Assignee: Timothy Bish
>             Fix For: 5.6.0
>
>         Attachments: AMQ3529Test.java
>
>
> Hello,
> While running tests with JMeter and calling stop while test is running, I see that Transport thread stays open and all close() on Connection, MessageConsumer, Session calls fails with exception:
> 2011/10/08 17:16:59 ERROR - jmeter.protocol.jms.client.ReceiveSubscriber: Error during close:  javax.jms.JMSException: java.io.InterruptedIOException
> 	at org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:62)
> 	at org.apache.activemq.ActiveMQConnection.doSyncSendPacket(ActiveMQConnection.java:1342)
> 	at org.apache.activemq.ActiveMQConnection.close(ActiveMQConnection.java:660)
> 	at org.apache.jmeter.protocol.jms.Utils.close(Utils.java:65)
> 	at org.apache.jmeter.protocol.jms.client.ReceiveSubscriber.close(ReceiveSubscriber.java:236)
> 	at org.apache.jmeter.protocol.jms.sampler.SubscriberSampler.threadFinished(SubscriberSampler.java:305)
> 	at org.apache.jmeter.threads.JMeterThread$ThreadListenerTraverser.addNode(JMeterThread.java:579)
> 	at org.apache.jorphan.collections.HashTree.traverseInto(HashTree.java:986)
> 	at org.apache.jorphan.collections.HashTree.traverse(HashTree.java:969)
> 	at org.apache.jmeter.threads.JMeterThread.threadFinished(JMeterThread.java:554)
> 	at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:328)
> 	at java.lang.Thread.run(Thread.java:680)
> Caused by: java.io.InterruptedIOException
> 	at org.apache.activemq.transport.WireFormatNegotiator.oneway(WireFormatNegotiator.java:102)
> 	at org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:40)
> 	at org.apache.activemq.transport.ResponseCorrelator.asyncRequest(ResponseCorrelator.java:81)
> 	at org.apache.activemq.transport.ResponseCorrelator.request(ResponseCorrelator.java:91)
> 	at org.apache.activemq.ActiveMQConnection.doSyncSendPacket(ActiveMQConnection.java:1329)
> 	... 10 more
> I opened an issue in JMeter with all details but I think issue is in ActiveMQ, see:
> https://issues.apache.org/bugzilla/show_bug.cgi?id=51997
> Issue contains a Test Plan, and all details.
> Regards
> Philippe



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)