Author: hthomann
Date: Mon Aug 17 23:58:02 2015
New Revision: 1696353

URL: http://svn.apache.org/r1696353
Log:
OPENJPA-2470: Update DataCacheManagerImpl to use a ConcurrentHashMap rather 
than a HashMap - backported to 2.2.x Rick Curtis' changes from trunk.

Modified:
    openjpa/branches/2.2.x/   (props changed)
    
openjpa/branches/2.2.x/openjpa-kernel/src/main/java/org/apache/openjpa/datacache/DataCacheManagerImpl.java

Propchange: openjpa/branches/2.2.x/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Mon Aug 17 23:58:02 2015
@@ -2,4 +2,4 @@
 /openjpa/branches/2.0.x:1484136,1484287,1504611
 
/openjpa/branches/2.1.x:1415379,1415398,1469090,1469949,1484300,1484313,1485010,1505837,1513249,1517838,1529241,1530146,1533218,1533280,1539188,1569528,1575444,1591536,1614935,1636464,1648430,1655218,1662610,1673300,1673491,1686894
 
/openjpa/branches/2.2.1.x:1415367,1415413,1415425,1469408,1470097,1484320,1484322,1491895,1504719,1529267,1529340,1530347,1531176,1533222,1539193,1584153,1648450,1651808,1686910
-/openjpa/trunk:1416742,1420324,1430117,1431649,1436957,1436960,1448662,1448796,1451369,1456574,1456614,1459091,1461833,1469646,1469649,1469652,1504282,1600682,1600757,1603251,1626287,1632647
+/openjpa/trunk:1416742,1420324,1430117,1431649,1436957,1436960,1448662,1448796,1451369,1456574,1456614,1459091,1461833,1469646,1469649,1469652,1504282,1558594,1600682,1600757,1603251,1626287,1632647

Modified: 
openjpa/branches/2.2.x/openjpa-kernel/src/main/java/org/apache/openjpa/datacache/DataCacheManagerImpl.java
URL: 
http://svn.apache.org/viewvc/openjpa/branches/2.2.x/openjpa-kernel/src/main/java/org/apache/openjpa/datacache/DataCacheManagerImpl.java?rev=1696353&r1=1696352&r2=1696353&view=diff
==============================================================================
--- 
openjpa/branches/2.2.x/openjpa-kernel/src/main/java/org/apache/openjpa/datacache/DataCacheManagerImpl.java
 (original)
+++ 
openjpa/branches/2.2.x/openjpa-kernel/src/main/java/org/apache/openjpa/datacache/DataCacheManagerImpl.java
 Mon Aug 17 23:58:02 2015
@@ -22,6 +22,7 @@ import java.util.HashMap;
 import java.util.Map;
 import java.util.Set;
 import java.util.Map.Entry;
+import java.util.concurrent.ConcurrentHashMap;
 
 import org.apache.openjpa.conf.OpenJPAConfiguration;
 import org.apache.openjpa.enhance.PCDataGenerator;
@@ -50,7 +51,7 @@ public class DataCacheManagerImpl
     private DataCachePCDataGenerator _pcGenerator = null;
     private ClearableScheduler _scheduler = null;
     private CacheDistributionPolicy _policy = new 
DefaultCacheDistributionPolicy();
-    private Map<ClassMetaData,Boolean> _cacheable = new HashMap<ClassMetaData, 
Boolean>();
+    private Map<ClassMetaData, Boolean> _cacheable = null;
     
     // Properties that are configured via openjpa.DataCache but need to be 
used here. This is here to support the 1.2
     // way of doing things with openjpa.DataCache(Types=x;y;z,ExcludedTypes=a)
@@ -58,7 +59,8 @@ public class DataCacheManagerImpl
     private Set<String> _excludedTypes;
     
     public void initialize(OpenJPAConfiguration conf, ObjectValue dataCache, 
ObjectValue queryCache) {
-        _conf = conf;        
+        _conf = conf;
+        _cacheable = new ConcurrentHashMap<ClassMetaData, Boolean>();
         _queryCache = (QueryCache) queryCache.instantiate(QueryCache.class, 
conf);
         if (_queryCache != null)
             _queryCache.initialize(this);


Reply via email to