Uploaded image for project: 'Application Server 3  4  5 and 6'
  1. Application Server 3 4 5 and 6
  2. JBAS-3847

Extend EJBContext.getRollbackOnly to cover transactions which have been asynchronously rolled back

    XMLWordPrintable

Details

    • 0
    • 0% 0%

    Description

      The current implementation of EJBContext.getRollbackOnly will return true if the current transaction context has status Status.STATUS_MARKED_ROLLBACK.

      If using JBossTS, a transaction timeout results in the transaction being rolled back asynchronously (not just marked for rollback). Code using the getRollbackOnly method as an indicator of the current transaction status will not function as expected.

      The transaction status undergoes the following transition
      Status.STATUS_ACTIVE -> Status.STATUS_ROLLING_BACK -> Status.STATUS_ROLLEDBACK.

      Extending getRollbackOnly to check for Status.STATUS_MARKED_ROLLBACK, Status.STATUS_ROLLING_BACK and Status.STATUS_ROLLEDBACK will allow this code to function as expected.

      Attachments

        Issue Links

          Activity

            People

              dandread1@redhat.com Dimitrios Andreadis
              kconner@redhat.com Kevin Conner (Inactive)
              Votes:
              1 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: