You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm@geronimo.apache.org by ke...@apache.org on 2009/09/14 01:27:17 UTC

svn commit: r814435 - /geronimo/server/branches/2.1/plugins/connector/geronimo-transaction/src/main/java/org/apache/geronimo/transaction/manager/TransactionManagerImplGBean.java

Author: kevan
Date: Sun Sep 13 23:27:16 2009
New Revision: 814435

URL: http://svn.apache.org/viewvc?rev=814435&view=rev
Log:
GERONIMO-4869 Initialize TransactionTimer CurrentTime thread during initialization. This avoids inheriting ThreadLocals which could cause a ClassLoader memory leak

Modified:
    geronimo/server/branches/2.1/plugins/connector/geronimo-transaction/src/main/java/org/apache/geronimo/transaction/manager/TransactionManagerImplGBean.java

Modified: geronimo/server/branches/2.1/plugins/connector/geronimo-transaction/src/main/java/org/apache/geronimo/transaction/manager/TransactionManagerImplGBean.java
URL: http://svn.apache.org/viewvc/geronimo/server/branches/2.1/plugins/connector/geronimo-transaction/src/main/java/org/apache/geronimo/transaction/manager/TransactionManagerImplGBean.java?rev=814435&r1=814434&r2=814435&view=diff
==============================================================================
--- geronimo/server/branches/2.1/plugins/connector/geronimo-transaction/src/main/java/org/apache/geronimo/transaction/manager/TransactionManagerImplGBean.java (original)
+++ geronimo/server/branches/2.1/plugins/connector/geronimo-transaction/src/main/java/org/apache/geronimo/transaction/manager/TransactionManagerImplGBean.java Sun Sep 13 23:27:16 2009
@@ -42,6 +42,9 @@
      */
     public TransactionManagerImplGBean(int defaultTransactionTimeoutSeconds, XidFactory xidFactory, TransactionLog transactionLog) throws XAException {
         super(defaultTransactionTimeoutSeconds, xidFactory, transactionLog);
+        // Start the TransactionTimer$CurrentTime thread. This should avoid potential ClassLoader 
+        // memory leaks caused by InheritableThreadLocals on the CurrentTime thread. See GERONIMO-4869 for more info.
+        TransactionTimer.getCurrentTime();
     }
 
     public static final GBeanInfo GBEAN_INFO;