[jboss-svn-commits] JBL Code SVN: r25202 - labs/jbosstm/branches/JBOSSTS_4_2_3_GA_SP/ArjunaJTA/jta/classes/com/arjuna/ats/internal/jta/transaction/arjunacore.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Tue Feb 10 08:43:39 EST 2009


Author: jhalliday
Date: 2009-02-10 08:43:39 -0500 (Tue, 10 Feb 2009)
New Revision: 25202

Modified:
   labs/jbosstm/branches/JBOSSTS_4_2_3_GA_SP/ArjunaJTA/jta/classes/com/arjuna/ats/internal/jta/transaction/arjunacore/BaseTransaction.java
Log:
Backport BaseTransaction memory leak fix from trunk to 4.2.3.SP, converting to java 1.4 on the way.  JBTM-444


Modified: labs/jbosstm/branches/JBOSSTS_4_2_3_GA_SP/ArjunaJTA/jta/classes/com/arjuna/ats/internal/jta/transaction/arjunacore/BaseTransaction.java
===================================================================
--- labs/jbosstm/branches/JBOSSTS_4_2_3_GA_SP/ArjunaJTA/jta/classes/com/arjuna/ats/internal/jta/transaction/arjunacore/BaseTransaction.java	2009-02-10 13:26:24 UTC (rev 25201)
+++ labs/jbosstm/branches/JBOSSTS_4_2_3_GA_SP/ArjunaJTA/jta/classes/com/arjuna/ats/internal/jta/transaction/arjunacore/BaseTransaction.java	2009-02-10 13:43:39 UTC (rev 25202)
@@ -84,8 +84,7 @@
 			}
 		}
 
-
-		Integer value = (Integer) _timeouts.get(ThreadUtil.getThreadId());
+		Integer value = (Integer)_timeouts.get();
 		int v = 0; // if not set then assume 0. What else can we do?
 
 		if (value != null)
@@ -216,13 +215,13 @@
 	{
 		if (seconds >= 0)
 		{
-			_timeouts.put(ThreadUtil.getThreadId(), new Integer(seconds));
+		    _timeouts.set(new Integer(seconds));
 		}
 	}
 
 	public int getTimeout() throws javax.transaction.SystemException
 	{
-		Integer value = (Integer) _timeouts.get(ThreadUtil.getThreadId());
+		Integer value = (Integer)_timeouts.get();
 
 		if (value != null)
 		{
@@ -265,7 +264,7 @@
 			throw new javax.transaction.SystemException(e2.toString());
 		}
 		
-		Integer value = (Integer) _timeouts.get(ThreadUtil.getThreadId());
+		Integer value = (Integer)_timeouts.get();
 		int v = 0; // if not set then assume 0. What else can we do?
 		
 		if (value != null)
@@ -300,7 +299,7 @@
 
 		if (theTransaction == null)
 			return;
-		else
+		else 
 		{
 			if ((theTransaction.getStatus() != javax.transaction.Status.STATUS_NO_TRANSACTION)
 					&& !_supportSubtransactions)
@@ -314,7 +313,7 @@
 
 	private static boolean _supportSubtransactions = false;
 
-	private static Hashtable _timeouts = new Hashtable();
+	private static ThreadLocal _timeouts = new ThreadLocal(); // Integers
 
 	static
 	{




More information about the jboss-svn-commits mailing list