Uploaded image for project: 'River (Retired)'
  1. River (Retired)
  2. RIVER-296

Mahalo implementation throws CannotAbortException from abort() on an expired transaction

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • River_2.1.1
    • River_2.2.0
    • com_sun_jini_mahalo
    • None

    Description

      [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.

      Attachments

        1. RIVER-296.patch
          4 kB
          Tom Hobbs

        Activity

          People

            jukkaz Jukka Zitting
            resendes Robert Resendes
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: