User: salborini
  Date: 00/10/10 16:47:02

  Modified:    src/main/org/jboss/tm TxCapsule.java TxManager.java
  Log:
  TxCapsules were never removed.  (memory leak, jboss crashed after about 80000 tx)
  Thanks to OptimizeIt for pointing this out :-)
  
  Revision  Changes    Path
  1.13      +6 -1      jboss/src/main/org/jboss/tm/TxCapsule.java
  
  Index: TxCapsule.java
  ===================================================================
  RCS file: /products/cvs/ejboss/jboss/src/main/org/jboss/tm/TxCapsule.java,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- TxCapsule.java    2000/10/02 15:42:09     1.12
  +++ TxCapsule.java    2000/10/10 23:47:02     1.13
  @@ -43,7 +43,7 @@
    *  @author <a href="mailto:[EMAIL PROTECTED]">Marc Fleury</a>
    *  @author <a href="mailto:[EMAIL PROTECTED]">Ole Husgaard</a>
    *
  - *  @version $Revision: 1.12 $
  + *  @version $Revision: 1.13 $
    */
   class TxCapsule implements TimeoutTarget
   {
  @@ -188,6 +188,11 @@
      }
   
      // Package protected ---------------------------------------------
  +
  +   XidImpl getXid()
  +   {
  +       return xid;
  +   }
   
      /**
       *  Import a transaction encapsulated here.
  
  
  
  1.21      +2 -2      jboss/src/main/org/jboss/tm/TxManager.java
  
  Index: TxManager.java
  ===================================================================
  RCS file: /products/cvs/ejboss/jboss/src/main/org/jboss/tm/TxManager.java,v
  retrieving revision 1.20
  retrieving revision 1.21
  diff -u -r1.20 -r1.21
  --- TxManager.java    2000/10/08 04:45:07     1.20
  +++ TxManager.java    2000/10/10 23:47:02     1.21
  @@ -38,7 +38,7 @@
    *  @author Rickard �berg ([EMAIL PROTECTED])
    *  @author <a href="mailto:[EMAIL PROTECTED]">Marc Fleury</a>
    *  @author <a href="mailto:[EMAIL PROTECTED]">Ole Husgaard</a>
  - *  @version $Revision: 1.20 $
  + *  @version $Revision: 1.21 $
    */
   public class TxManager
   implements TransactionManager
  @@ -267,7 +267,7 @@
       */
      void releaseTxCapsule(TxCapsule txCapsule)
      {
  -      activeCapsules.remove(txCapsule);
  +      activeCapsules.remove(txCapsule.getXid());
   
         SoftReference ref = new SoftReference(txCapsule);
         synchronized (inactiveCapsules) {
  
  
  

Reply via email to