Author: kwsutter
Date: Tue Feb 21 16:31:22 2012
New Revision: 1291900

URL: http://svn.apache.org/viewvc?rev=1291900&view=rev
Log:
OPENJPA-2134.  Do not close Connections during prepareForPooling if 
ConnectionRetainMode is set to "always".

Modified:
    
openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/EntityManagerImpl.java

Modified: 
openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/EntityManagerImpl.java
URL: 
http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/EntityManagerImpl.java?rev=1291900&r1=1291899&r2=1291900&view=diff
==============================================================================
--- 
openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/EntityManagerImpl.java
 (original)
+++ 
openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/EntityManagerImpl.java
 Tue Feb 21 16:31:22 2012
@@ -1156,11 +1156,14 @@ public class EntityManagerImpl
     public void prepareForPooling() {
         assertNotCloseInvoked();
         clear();
-        _broker.lock();  // since this direct close path is not protected...
-        try {
-            _broker.getStoreManager().close();
-        } finally {
-            _broker.unlock();
+        // Do not close connection if ConnectionRetainMode is set to Always...
+        if (getConnectionRetainMode() != ConnectionRetainMode.ALWAYS) {
+            _broker.lock();  // since this direct close path is not 
protected...
+            try {
+                _broker.getStoreManager().close();
+            } finally {
+                _broker.unlock();
+            }
         }
     }
     


Reply via email to