openjpa-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From jgras...@apache.org
Subject svn commit: r1675495 - /openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/InformixDictionary.java
Date Wed, 22 Apr 2015 20:35:19 GMT
Author: jgrassel
Date: Wed Apr 22 20:35:18 2015
New Revision: 1675495

URL: http://svn.apache.org/r1675495
Log:
OPENJPA-2570: Allow an informix user the option to disable the RETAINUPDATELOCKS sql

Modified:
    openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/InformixDictionary.java

Modified: openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/InformixDictionary.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/InformixDictionary.java?rev=1675495&r1=1675494&r2=1675495&view=diff
==============================================================================
--- openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/InformixDictionary.java
(original)
+++ openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/InformixDictionary.java
Wed Apr 22 20:35:18 2015
@@ -27,6 +27,7 @@ import java.sql.Statement;
 import java.sql.Types;
 import java.util.Arrays;
 import java.util.Collection;
+import java.util.Collections;
 import java.util.Map;
 import java.util.Set;
 
@@ -82,8 +83,8 @@ public class InformixDictionary
 
     protected boolean useJCC = false;
     // weak set of connections we've already executed lock mode sql on
-    private final Collection _seenConnections = new ReferenceHashSet
-        (ReferenceHashSet.WEAK);
+    private final Collection _seenConnections = Collections.synchronizedSet(
+    		new ReferenceHashSet(ReferenceHashSet.WEAK));
 
     public boolean disableRetainUpdateLocksSQL=false;
 
@@ -324,21 +325,19 @@ public class InformixDictionary
 
         // if we haven't already done so, initialize the lock mode of the
         // connection
-        synchronized(_seenConnections) {
-            if (_seenConnections.add(conn)) {
-                if (lockModeEnabled) {
-                    String sql = "SET LOCK MODE TO WAIT";
-                    if (lockWaitSeconds > 0)
-                        sql = sql + " " + lockWaitSeconds;
-                    execute(sql, conn, true);
-                }
-                
-                if (!disableRetainUpdateLocksSQL){
-                    String sql = "SET ENVIRONMENT RETAINUPDATELOCKS 'ALL'";
-                    execute(sql, conn, false);
-                }
+        if (_seenConnections.add(conn)) {
+            if (lockModeEnabled) {
+                String sql = "SET LOCK MODE TO WAIT";
+                if (lockWaitSeconds > 0)
+                    sql = sql + " " + lockWaitSeconds;
+                execute(sql, conn, true);
             }
-        }       
+            
+            if (!disableRetainUpdateLocksSQL){
+                String sql = "SET ENVIRONMENT RETAINUPDATELOCKS 'ALL'";
+                execute(sql, conn, false);
+            }
+        }      
 
         // the datadirect driver requires that we issue a rollback before using
         // each connection



Mime
View raw message