diff options
| author | Andrew Branson <andrew.branson@cern.ch> | 2013-01-25 20:25:12 +0100 |
|---|---|---|
| committer | Andrew Branson <andrew.branson@cern.ch> | 2013-01-25 20:25:12 +0100 |
| commit | efc892720203b5f4e574d736ea1bd68e0e8ba6c7 (patch) | |
| tree | 70cc7345625ab896694165b1d0b6403757311a46 | |
| parent | 6113dd5d5614c3845e93f116809ec08f9551f182 (diff) | |
Fix unsynchronized gap between check and retrieve of memcache object.
| -rw-r--r-- | src/main/java/com/c2kernel/persistency/ClusterStorageManager.java | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/main/java/com/c2kernel/persistency/ClusterStorageManager.java b/src/main/java/com/c2kernel/persistency/ClusterStorageManager.java index c49b41f..bb5f90f 100644 --- a/src/main/java/com/c2kernel/persistency/ClusterStorageManager.java +++ b/src/main/java/com/c2kernel/persistency/ClusterStorageManager.java @@ -162,8 +162,8 @@ public class ClusterStorageManager { C2KLocalObject result = null;
// check cache first
NonStrongRefCache<String, C2KLocalObject> sysKeyMemCache = null;
- if (memoryCache.containsKey(sysKeyIntObj)) {
- sysKeyMemCache = memoryCache.get(sysKeyIntObj);
+ sysKeyMemCache = memoryCache.get(sysKeyIntObj);
+ if (sysKeyMemCache != null) {
synchronized(sysKeyMemCache) {
C2KLocalObject obj = sysKeyMemCache.get(path);
if (obj != null) {
|
