Session exceptions should only be notified via the exception listener, if it
cannot be thrown directly to the application.
--------------------------------------------------------------------------------------------------------------------------
Key: QPID-3289
URL: https://issues.apache.org/jira/browse/QPID-3289
Project: Qpid
Issue Type: Bug
Reporter: Rajith Attapattu
Assignee: Rajith Attapattu
The 0-10 code path in the JMS client always notifies a session exception via
the connection listener, even when it can throw a JMS exception for a
synchronous method call.
For example session.createConsumer(destination) could fail due to an ACL
violation and the session gets closed with an execution exception.
Currently the JMS client throws an exception and also notifies the connection
listener which results in the connection (and any other sessions associated
with that connection) being closed.
Another undesirable effect of this is the potential for deadlocks happening
around the failovermutex.
A reasonable solution for this problem would be to not notify via the
connection listener if there is a way of throwing an exception to the
application directly.
For example session.createConsumer/Producer is a synchronous call and we could
easily throw a JMS exception. In this case there is little value in notifying
this via the connection listener and it also has the undesirable effect of
closing the connection.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:[email protected]