[
https://issues.apache.org/jira/browse/QPID-2795?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Robbie Gemmell updated QPID-2795:
---------------------------------
Description:
The broker is notified that no data has been recieved from the client after the
appropriate heartbeating time delay, however at this point it is unable to
disconnect the client. On trunk, the relevant method has no implementation and
the notifiation is discarded. On the 0.5.x-dev branch it throws an IOException
which is then caught by mina and provided to exception handling callback in the
broker. This handler makes the assumption that the Mina session will be closed
because it is an IOException since this is the behaviour Mina stipulates for
the method, however it would seem that does not apply when the exception is
raised from within the sessionIdle handler, as the sessionClosed handler is
never called.
As a result of the above the broker simply sits with Mina periodically firing
the idle events and them effectively getting dropped. The idle handlers should
be updated to explicitly close the mina session at this point and allow the
broker to disconnect the client.
was:The broker is notified that no data has been recieved from the client
after the appropriate heartbeating time delay, however at this point it throws
an IOException which is then caught by mina and provided to exception handling
callback in the broker. This handler makes the assumption that the Mina session
will be closed because it is an IOException since this is the behaviour Mina
stipulates for the method, however it would seem that does not apply when the
exception is raised from within the sessionIdle handler, as the sessionClosed
handler is never called. As a result, the broker simply sits with Mina
periodically firing the idle events and dropping the exceptions, leaving the
connection open. The idle handler should be updated to explicitly close the
mina session at this point and allow the broekr to disconnect the client.
> broker is unable to disconnect unresponsive 0-8/0-9 clients when attempting
> to once heartbeating timeout is detected
> --------------------------------------------------------------------------------------------------------------------
>
> Key: QPID-2795
> URL: https://issues.apache.org/jira/browse/QPID-2795
> Project: Qpid
> Issue Type: Bug
> Components: Java Broker
> Affects Versions: M2.1, M3, M4, 0.5, 0.6
> Reporter: Robbie Gemmell
> Fix For: 0.7
>
>
> The broker is notified that no data has been recieved from the client after
> the appropriate heartbeating time delay, however at this point it is unable
> to disconnect the client. On trunk, the relevant method has no implementation
> and the notifiation is discarded. On the 0.5.x-dev branch it throws an
> IOException which is then caught by mina and provided to exception handling
> callback in the broker. This handler makes the assumption that the Mina
> session will be closed because it is an IOException since this is the
> behaviour Mina stipulates for the method, however it would seem that does not
> apply when the exception is raised from within the sessionIdle handler, as
> the sessionClosed handler is never called.
> As a result of the above the broker simply sits with Mina periodically firing
> the idle events and them effectively getting dropped. The idle handlers
> should be updated to explicitly close the mina session at this point and
> allow the broker to disconnect the client.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:[email protected]