Uploaded image for project: 'Application Server 7'
  1. Application Server 7
  2. AS7-5539

JBOSS7 server hangs up completely when a EJB2.1 entity bean business method is called in same transaction in a separate thread from the thread which started the transaction

    XMLWordPrintable

Details

    • Bug
    • Resolution: Won't Do
    • Major
    • None
    • 7.1.1.Final, 7.1.3.Final (EAP), EAP 6.1.0.Alpha (7.2.0.Final)
    • EJB, Transactions
    • None

    Description

      JBOSS7 server hangs up completely while trying to access a EJB2.1 entity bean method in a specific scenario.
      I am using a session facade pattern in which I call my EntityBean from a Stateless session bean. For moth the beans I have defined the transaction attribute as REQUIRED.
      On debugging the code I found that if the same Entity bean is accessed from two different threads in same transaction then this issue occurs.

      So for the first time my code enters "EntityBeanSynchronizationInterceptor" code is able to take the lock and assign the requester thread as the lock owner. When second time it comes to access the same entity bean from different thread in SAME TRANSACTION (as 2nd required results in joining the transaction), JBOSS7 server code completely stalls in taking the lock. Moreover this time requester thread is not given the owner status of the transaction.

      Code snippet where code hangs:
      final Object lockOwner = getLockOwner(transactionSynchronizationRegistry);
      lock.pushOwner(lockOwner);
      try {
      lock.lock(); //line 80 in EntityBeanSynchronizationInterceptor

      and subsequently in:

      public void lock()

      { if (compareAndSetState(0, 1)) owner = currentRequestor(); else acquire(1); //Here line 86 in OwnableReentrantLock }

      This is a completely blocking issue for migrating my application from JBOSS6 to JBOSS7.
      I get this error in numerous places in my application code.

      Attachments

        Activity

          People

            jaikiran Jaikiran Pai (Inactive)
            ion_mayank Mayank Gupta (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: