[Mulgara-svn] r650 - branches/mgr-73/src/jar/resolver/java/org/mulgara/resolver
ronald at mulgara.org
ronald at mulgara.org
Sat Feb 23 09:19:32 UTC 2008
Author: ronald
Date: 2008-02-23 01:19:31 -0800 (Sat, 23 Feb 2008)
New Revision: 650
Modified:
branches/mgr-73/src/jar/resolver/java/org/mulgara/resolver/MulgaraExternalTransactionFactory.java
Log:
Fix memory leak: the xaResources map was never releasing the sessions and the
associated resource-contexts.
Modified: branches/mgr-73/src/jar/resolver/java/org/mulgara/resolver/MulgaraExternalTransactionFactory.java
===================================================================
--- branches/mgr-73/src/jar/resolver/java/org/mulgara/resolver/MulgaraExternalTransactionFactory.java 2008-02-23 05:55:06 UTC (rev 649)
+++ branches/mgr-73/src/jar/resolver/java/org/mulgara/resolver/MulgaraExternalTransactionFactory.java 2008-02-23 09:19:31 UTC (rev 650)
@@ -23,6 +23,7 @@
import java.util.HashSet;
import java.util.Map;
import java.util.Set;
+import java.util.WeakHashMap;
import javax.transaction.xa.XAResource;
import javax.transaction.xa.Xid;
@@ -60,7 +61,7 @@
this.associatedTransaction = new HashMap<DatabaseSession, MulgaraExternalTransaction>();
this.sessionXAMap = new Assoc1toNMap<DatabaseSession, MulgaraExternalTransaction>();
- this.xaResources = new HashMap<DatabaseSession, MulgaraXAResourceContext>();
+ this.xaResources = new WeakHashMap<DatabaseSession, MulgaraXAResourceContext>();
}
public MulgaraTransaction getTransaction(final DatabaseSession session, boolean write)
More information about the Mulgara-svn
mailing list