[
https://issues.apache.org/jira/browse/QPIDJMS-521?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17239764#comment-17239764
]
ASF subversion and git services commented on QPIDJMS-521:
---------------------------------------------------------
Commit 8fea843e9b46457f4dda3b21b35c3c16558b723f in qpid-jms's branch
refs/heads/master from Robbie Gemmell
[ https://gitbox.apache.org/repos/asf?p=qpid-jms.git;h=8fea843 ]
QPIDJMS-521: ensure ExceptionListener called during unexpected async dispatch
failure is allowed to close the Session/Connection
> ExceptionListener fired due to async dispatch failure is unable to close the
> Session/Connection
> -----------------------------------------------------------------------------------------------
>
> Key: QPIDJMS-521
> URL: https://issues.apache.org/jira/browse/QPIDJMS-521
> Project: Qpid JMS
> Issue Type: Task
> Components: qpid-jms-client
> Affects Versions: 0.55.0
> Reporter: Robbie Gemmell
> Assignee: Robbie Gemmell
> Priority: Major
> Fix For: 0.56.0
>
>
> **When an unexpected failure occurs during the process of dispatching a
> message to an asynchronous consumer (i.e the work surrounding, but not
> including, onMessage), the connection ExceptionListener is fired as a result.
> If the ExceptionListener attempts to close the consumers containing Session
> or Connection it will currently fail with an javax.jms.IllegalStateException
> noting an "Illegal invocation from MessageListener callback".
> This happens because the session async dispatch thread is ordinarily not
> allowed to call these methods, is in keeping with the impl and their API
> definitions. However, in this case it is not firing onMessage at the time but
> is rather actually firing onException instead (and has relinquished the
> session delivery lock). As such the "Illegal invocation" exception is
> incorrect and the thread calling those operations should be permitted during
> this scenario.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]