[ 
https://issues.apache.org/jira/browse/AMQ-6089?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15085471#comment-15085471
 ] 

Gary Tully commented on AMQ-6089:
---------------------------------

I agree, I had a read of http://pubs.opengroup.org/onlinepubs/009680699/toc.pdf 
- the javadoc does not seem to have this level of detail.
returning noting in the case of TMNOFLAGS makes sense, the only caveat is that 
we won't have any way to record that a scan is in progress. Because TMNOFLAGS 
must be exclusive and we always return the full array, it will work ok.

> org.apache.activemq.TransactionContext.recover(int flag) should return null 
> or an empty array when it receives the flag  XAResource.TMNOFLAGS as it has 
> return all transactions when called with  XAResource.TMSTARTRSCAN. or 
> XAResource. TMENDRSCAN.
> -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: AMQ-6089
>                 URL: https://issues.apache.org/jira/browse/AMQ-6089
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Transport
>    Affects Versions: 5.12.1
>            Reporter: Chris
>              Labels: newbie
>         Attachments: AMQRecoveryTester.java, XAHandlerXid.java, activemq 
> 5.12.patch
>
>
> org.apache.activemq.TransactionContext implements XAResource.  The recover 
> method currently ignores the flag parameter, returning all transaction 
> regardless of flags passed to it.  This behaviour cause our transaction 
> manager (IIB) to go into an indefinite loop.  It is expecting to get an empty 
> array or null when XAResource.TMNOFLAGS is passed as all transactions where 
> returned by the prior XAResource.TMSTARTRSCAN call.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to