You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by jg...@apache.org on 2015/07/30 16:53:15 UTC

[04/17] tomee git commit: Revert "static connection holder doesnt exist anymore"

Revert "static connection holder doesnt exist anymore"

This reverts commit 39cbaca105ab2f087d3ebc73c9bec728e7cd6cd8.


Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/3f71bbde
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/3f71bbde
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/3f71bbde

Branch: refs/heads/tomee-1.7.x
Commit: 3f71bbde8955faec8e0edb56f803b83d2b9fbd95
Parents: 2a7fc7e
Author: Jonathan Gallimore <jo...@jrg.me.uk>
Authored: Thu Jul 30 13:46:11 2015 +0100
Committer: Jonathan Gallimore <jo...@jrg.me.uk>
Committed: Thu Jul 30 13:46:11 2015 +0100

----------------------------------------------------------------------
 .../resource/jdbc/UTManagedDataSourceTest.java  | 27 +++++++++++++++-----
 1 file changed, 21 insertions(+), 6 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tomee/blob/3f71bbde/container/openejb-core/src/test/java/org/apache/openejb/resource/jdbc/UTManagedDataSourceTest.java
----------------------------------------------------------------------
diff --git a/container/openejb-core/src/test/java/org/apache/openejb/resource/jdbc/UTManagedDataSourceTest.java b/container/openejb-core/src/test/java/org/apache/openejb/resource/jdbc/UTManagedDataSourceTest.java
index 77f9049..146a5b3 100644
--- a/container/openejb-core/src/test/java/org/apache/openejb/resource/jdbc/UTManagedDataSourceTest.java
+++ b/container/openejb-core/src/test/java/org/apache/openejb/resource/jdbc/UTManagedDataSourceTest.java
@@ -19,18 +19,14 @@ package org.apache.openejb.resource.jdbc;
 import org.apache.openejb.jee.EjbJar;
 import org.apache.openejb.jee.SingletonBean;
 import org.apache.openejb.junit.ApplicationComposer;
+import org.apache.openejb.resource.jdbc.managed.local.ManagedConnection;
 import org.apache.openejb.testing.Configuration;
 import org.apache.openejb.testing.Module;
+import org.junit.After;
 import org.junit.BeforeClass;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 
-import java.sql.Connection;
-import java.sql.DriverManager;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-import java.sql.Statement;
-import java.util.Properties;
 import javax.annotation.Resource;
 import javax.ejb.EJB;
 import javax.ejb.LocalBean;
@@ -38,8 +34,18 @@ import javax.ejb.Singleton;
 import javax.ejb.TransactionManagement;
 import javax.ejb.TransactionManagementType;
 import javax.sql.DataSource;
+import javax.transaction.Transaction;
 import javax.transaction.UserTransaction;
+import java.lang.reflect.Field;
+import java.sql.Connection;
+import java.sql.DriverManager;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.sql.Statement;
+import java.util.Map;
+import java.util.Properties;
 
+import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
 
@@ -203,6 +209,15 @@ public class UTManagedDataSourceTest {
         assertFalse(exists(12));
     }
 
+    @After
+    public void checkTxMapIsEmpty() throws Exception { // avoid memory leak
+        final Field map = ManagedConnection.class.getDeclaredField("CONNECTION_BY_TX_BY_DS");
+        map.setAccessible(true);
+        final Map<DataSource, Map<Transaction, Connection>> instance = (Map<DataSource, Map<Transaction, Connection>>) map.get(null);
+        assertEquals(1, instance.size());
+        assertEquals(0, instance.values().iterator().next().size());
+    }
+
     private static boolean exists(final int id) throws Exception {
         final Connection connection = DriverManager.getConnection(URL, USER, PASSWORD);
         final Statement statement = connection.createStatement();