Qpid
  1. Qpid
  2. QPID-3448

JMS Client throws unchecked SessionExceptions to client application

    Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 0.10, 0.11, 0.12
    • Fix Version/s: 0.13
    • Component/s: Java Client
    • Labels:
      None

      Description

      On the 0-10 code path, there are instances where the client application receives an unchecked Qpid SessionException rather than a JMSException as mandated by the JMS Specification. The client application should not be forced to catch 'internal' Qpid exceptions.

      For example if a javax.jms.Session#commit takes longer than 60 seconds, the client receives:

      org.apache.qpid.transport.SessionException: timed out waiting for sync: complete = 12, point = 15
              at org.apache.qpid.transport.Session.sync(Session.java:798)
              at org.apache.qpid.transport.Session.sync(Session.java:772)
              at org.apache.qpid.transport.Session.invoke(Session.java:732)
              at org.apache.qpid.transport.Session.invoke(Session.java:561)
              at org.apache.qpid.transport.SessionInvoker.txCommit(SessionInvoker.java:148)
              at org.apache.qpid.client.AMQSession_0_10.sendCommit(AMQSession_0_10.java:423)
              at org.apache.qpid.client.AMQSession_0_10.commit(AMQSession_0_10.java:1008)
      

      For comparison, 0-8..-0-9-1 throws a JMSException with an underlying of AMQTimeoutException.

        Issue Links

          Activity

            People

            • Assignee:
              Robbie Gemmell
              Reporter:
              Keith Wall
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development