[infinispan-commits] Infinispan SVN: r1664 - trunk/core/src/main/java/org/infinispan/util/concurrent.

infinispan-commits at lists.jboss.org infinispan-commits at lists.jboss.org
Tue Apr 6 10:48:47 EDT 2010


Author: vblagojevic at jboss.com
Date: 2010-04-06 10:48:46 -0400 (Tue, 06 Apr 2010)
New Revision: 1664

Modified:
   trunk/core/src/main/java/org/infinispan/util/concurrent/BoundedConcurrentHashMap.java
Log:
maximum size has to be at least twice as concurrency (i.e two entries per segment)

Modified: trunk/core/src/main/java/org/infinispan/util/concurrent/BoundedConcurrentHashMap.java
===================================================================
--- trunk/core/src/main/java/org/infinispan/util/concurrent/BoundedConcurrentHashMap.java	2010-04-06 13:09:00 UTC (rev 1663)
+++ trunk/core/src/main/java/org/infinispan/util/concurrent/BoundedConcurrentHashMap.java	2010-04-06 14:48:46 UTC (rev 1664)
@@ -1138,6 +1138,10 @@
         if (capacity < 0 || concurrencyLevel <= 0)
             throw new IllegalArgumentException();
         
+        // minimum two elements per segment
+        if (capacity < (concurrencyLevel * 2))
+            throw new IllegalArgumentException("Maximum capacity has to be at least twice the concurrencyLevel");
+        
         if (evictionStrategy == null || evictionListener == null)
             throw new IllegalArgumentException();
 



More information about the infinispan-commits mailing list