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

Rob Godfrey commented on QPID-5776:
-----------------------------------

There were two issues at play here - firstly that the broker was not properly 
closing sessions/links when a connection was closed - this caused message 
consumers to still be attached to queues even though the connection had been 
removed.

The second issue was that the consumers were incorrectly handling the case 
where they were unable to send any data (because the connection was closed) 
which caused the IllegalArgumentException.

> Unhandled Exception java.lang.IllegalArgumentException causes broker to exit
> ----------------------------------------------------------------------------
>
>                 Key: QPID-5776
>                 URL: https://issues.apache.org/jira/browse/QPID-5776
>             Project: Qpid
>          Issue Type: Bug
>          Components: Java Broker
>    Affects Versions: 0.28
>            Reporter: Mark Soderquist
>            Assignee: Rob Godfrey
>             Fix For: 0.29
>
>         Attachments: QpidBrokerCrashTest.java
>
>
> An unhandled exception causes broker to exit. 
> Qpid Broker Version: 0.28 Build: 1594179
> JVM : Oracle Corporation version: 1.8.0_05-b13 
> OS : Linux version: 2.6.32-431.17.1.el6.x86_64 arch: amd64
> java.lang.IllegalArgumentException
>         at java.nio.Buffer.position(Buffer.java:244)
>         at 
> org.apache.qpid.amqp_1_0.transport.SessionEndpoint.sendTransfer(SessionEndpoint.java:611)
>         at 
> org.apache.qpid.amqp_1_0.transport.SendingLinkEndpoint.transfer(SendingLinkEndpoint.java:104)
>         at 
> org.apache.qpid.server.protocol.v1_0.ConsumerTarget_1_0.send(ConsumerTarget_1_0.java:270)
>         at 
> org.apache.qpid.server.protocol.v1_0.ConsumerTarget_1_0.send(ConsumerTarget_1_0.java:118)
>         at 
> org.apache.qpid.server.queue.QueueConsumerImpl.send(QueueConsumerImpl.java:471)
>         at 
> org.apache.qpid.server.queue.AbstractQueue.deliverMessage(AbstractQueue.java:1183)
>         at 
> org.apache.qpid.server.queue.AbstractQueue.attemptDelivery(AbstractQueue.java:1908)
>         at 
> org.apache.qpid.server.queue.AbstractQueue.processQueue(AbstractQueue.java:2073)
>         at org.apache.qpid.server.queue.QueueRunner$1.run(QueueRunner.java:80)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at javax.security.auth.Subject.doAs(Subject.java:360)
>         at org.apache.qpid.server.queue.QueueRunner.run(QueueRunner.java:71)
>         at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
>         at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
>         at java.lang.Thread.run(Thread.java:745)



--
This message was sent by Atlassian JIRA
(v6.2#6252)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org
For additional commands, e-mail: dev-h...@qpid.apache.org

Reply via email to