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

Problem with QueuedPessimisticEJBLock and Arjuna

XMLWordPrintable

      When using Arjuna, QueuedPessimisticEJBLock does not always properly detect that a waiting tx has timed out. The problem is that QueuedPessimisticEJBLock was written for the old TM, which did not rollback transactions on timeout, but only marked them for rollback. Now that Arjuna is in play, it has to check for rolled back transactions too.

      The isTxExpired() method should be changed to something like this:

      protected boolean isTxExpired(Transaction miTx) throws Exception {
      if (miTx != null
      && (miTx.getStatus() == Status.STATUS_MARKED_ROLLBACK || miTx.getStatus() == Status.STATUS_ROLLEDBACK))

      { return true; }

      return false;
      }

              olubyans@redhat.com Alexey Loubyansky
              husgaard Husgaard (Inactive)
              Votes:
              1 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated:
                Resolved: