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

EJB Container throws bean away during bean managed tx

    XMLWordPrintable

Details

    • Bug
    • Resolution: Obsolete
    • Major
    • None
    • JBossAS-3.2.6 Final
    • None
    • None

    Description

      SourceForge Submitter: mmalynn .
      JBoss build: 3.2.0 (build: CVSTag=JBoss_3_2_0
      date=200304110033)

      Java version: 1.3.1_05,Sun Microsystems Inc.
      Java VM: Java HotSpot(TM) Client VM 1.3.1_05-b02,
      Sun Microsystems Inc.
      OS-System: Windows 2000 5.0,x86

      The problem occurs when the container attemps to
      passivate a stateful session bean instance that is currently
      part of a bean-managed transaction.

      The console displays the following warning:

      16:02:11,906 WARN [AbstractInstanceCache] Unable to
      passivate due to ctx lock, id=dffworvn-g

      See server.log in attached zip file.

      Any method call to the bean after after this point results in
      an NoSuchObjectException. See stack trace in server.log
      file.

      Note that the ejbRemove() method is never called, it is as if
      the bean instance just vanishes.

      Looking at the source code it seems that
      AbstractInstanceCache.tryToPassivate() correctly
      determines that it can't passivate the bean due to the active
      transaction. The problem occurs because
      AbstractInstanceCache.release() removes the bean from
      the cache and then calls tryToPassivate() which silently fails
      and the bean is lost forever.

      To reproduce, follow README instructions in attached zip
      file.

      Attachments

        Activity

          People

            starksm64 Scott Stark (Inactive)
            sourceforge-user SourceForge legacy user (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: