You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Siddhesh Poyarekar (JIRA)" <ji...@apache.org> on 2011/07/21 03:29:57 UTC

[jira] [Updated] (QPID-3368) Check for dirty session after failover during commit() not in the correct place

     [ https://issues.apache.org/jira/browse/QPID-3368?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Siddhesh Poyarekar updated QPID-3368:
-------------------------------------

    Attachment: TxFailover.java

Test program to reproduce the issue.

> Check for dirty session after failover during commit() not in the correct place
> -------------------------------------------------------------------------------
>
>                 Key: QPID-3368
>                 URL: https://issues.apache.org/jira/browse/QPID-3368
>             Project: Qpid
>          Issue Type: Bug
>          Components: Java Client
>    Affects Versions: 0.10
>            Reporter: Siddhesh Poyarekar
>            Priority: Minor
>              Labels: patch
>         Attachments: TxFailover.java
>
>
> When a session is committed after failover using the session.commit() call, it incorrectly throws a RuntimeException (SessionException). It should throw a JMSException instead so that the client can recover.
> org.apache.qpid.client.AMQSession has a check for failover in its commit method, but this method is overridden in org.apache.qpid.client.AMQSession_0_10 and the latter does not have the failover check. As a result, the check is never used. I have attached a patch that reworks the code a bit to allow org.apache.qpid.client.AMQSession_0_10 to use the failover check during commit.

--
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:dev-subscribe@qpid.apache.org