Author: tolusha
Date: 2010-07-07 02:50:20 -0400 (Wed, 07 Jul 2010)
New Revision: 2749
Modified:
jcr/branches/1.12.x/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/dataflow/persistent/LinkedWorkspaceStorageCacheImpl.java
Log:
EXOJCR-840: avoid java.util.ConcurrentModificationException in
LinkedWorkspaceStorageCacheImpl.onSaveItems()
Modified:
jcr/branches/1.12.x/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/dataflow/persistent/LinkedWorkspaceStorageCacheImpl.java
===================================================================
---
jcr/branches/1.12.x/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/dataflow/persistent/LinkedWorkspaceStorageCacheImpl.java 2010-07-07
06:49:46 UTC (rev 2748)
+++
jcr/branches/1.12.x/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/dataflow/persistent/LinkedWorkspaceStorageCacheImpl.java 2010-07-07
06:50:20 UTC (rev 2749)
@@ -1783,12 +1783,12 @@
// delete parent
remove(parent);
- // delete parent containing child nodes list
- nodesCache.remove(parent.getParentIdentifier());
-
writeLock.lock();
try
{
+ // delete parent containing child nodes list
+ nodesCache.remove(parent.getParentIdentifier());
+
// traverse itemCache
Iterator<CacheValue> cacheIterator =
cache.values().iterator();
while (cacheIterator.hasNext())