Author: shuber
Date: Thu Oct 18 16:37:23 2007
New Revision: 18936
URL: https://svndev.jahia.net/websvn/listing.php?sc=3D1&rev=3D18936&repname=
=3Djahia
Log:
Fix ConcurrentModificationException when displaying cache status.
Modified:
trunk/core/src/java/org/jahia/services/cache/reference/ReferenceCacheIm=
pl.java
Modified: trunk/core/src/java/org/jahia/services/cache/reference/ReferenceC=
acheImpl.java
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/trunk/core/src/java/o=
rg/jahia/services/cache/reference/ReferenceCacheImpl.java&rev=3D18936&repna=
me=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- trunk/core/src/java/org/jahia/services/cache/reference/ReferenceCacheIm=
pl.java (original)
+++ trunk/core/src/java/org/jahia/services/cache/reference/ReferenceCacheIm=
pl.java Thu Oct 18 16:37:23 2007
@@ -1,11 +1,6 @@
package org.jahia.services.cache.reference;
=
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.Map;
-import java.util.Set;
+import java.util.*;
=
import org.apache.commons.collections.map.ReferenceMap;
import org.apache.commons.collections.map.LRUMap;
@@ -179,11 +174,16 @@
=
public long getGroupsKeysTotal() {
long totalSize =3D 0;
- Iterator groupIterator =3D groups.entrySet().iterator();
- while (groupIterator.hasNext()) {
- Map.Entry curEntry =3D (Map.Entry) groupIterator.next();
- Set keySet =3D (Set) curEntry.getValue();
- totalSize +=3D keySet.size();
+ try {
+ Iterator groupIterator =3D groups.entrySet().iterator();
+ while (groupIterator.hasNext()) {
+ Map.Entry curEntry =3D (Map.Entry) groupIterator.next();
+ Set keySet =3D (Set) curEntry.getValue();
+ totalSize +=3D keySet.size();
+ }
+ } catch (ConcurrentModificationException cme) {
+ logger.warn("Concurrent modification exception while calculati=
ng total groups keys for cache " + getName() + ", returning -1");
+ totalSize =3D -1;
}
return totalSize;
}
_______________________________________________
cvs_list mailing list
[email protected]
http://lists.jahia.org/cgi-bin/mailman/listinfo/cvs_list