You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@river.apache.org by "Tom Hobbs (JIRA)" <ji...@apache.org> on 2008/10/24 23:29:44 UTC

[jira] Updated: (RIVER-296) Mahalo implementation throws CannotAbortException from abort() on an expired transaction

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

Tom Hobbs updated RIVER-296:
----------------------------

    Attachment: RIVER-296.patch

I've attempted a fix for this by supplying additional logic inside the main abort method with looks at the current state of the transaction being aborted and throws a more applicable exception depending on that state.  The abort methods have also been overloaded to prevent the txm mgr from applying the expiration check if required.

Have run the txn mgr related qa tests and they still pass on my linux laptop.

I'm happy to apply further changes if this patch isn't correct or breaks something else.

> Mahalo implementation throws CannotAbortException from abort() on an expired transaction
> ----------------------------------------------------------------------------------------
>
>                 Key: RIVER-296
>                 URL: https://issues.apache.org/jira/browse/RIVER-296
>             Project: River
>          Issue Type: Bug
>          Components: com_sun_jini_mahalo
>    Affects Versions: AR1
>            Reporter: Robert Resendes
>         Attachments: RIVER-296.patch
>
>
> [Excerpts from javaspaces users thread: http://archives.java.sun.com/cgi-bin/wa?A2=ind0805&L=JAVASPACES-USERS&T=0&F=&S=&P=3061]
> =======================
> When using a transaction whose lease has expired:
> 1) Using in conjunction with space operations, you get an 
> UnknownTransactionException.
> 2) Aborting that transaction results in a CannotAbortException (which 
> has no cause included).
> 3) Committing that transaction results in an UnknownTransactionException.
> Why does the failed abort result in CannotAbort, but the failed commit 
> does not result in CannotCommit?   Why not throw UnknownTransaction in 
> every case?
> =======================
> > Why does the failed abort result in CannotAbort?
> Good question, looks like an implementation bug to me. (Feel free
> to file an Apache River JIRA bug.)  The spec seems clear that
> CannotAbortException should only be thrown if the transaction manager
> knows the transaction previously committed.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.