[infinispan-commits] Infinispan SVN: r1464 - in trunk/core/src/main/java/org/infinispan: eviction and 1 other directories.

infinispan-commits at lists.jboss.org infinispan-commits at lists.jboss.org
Mon Feb 8 07:50:01 EST 2010


Author: manik.surtani at jboss.com
Date: 2010-02-08 07:50:01 -0500 (Mon, 08 Feb 2010)
New Revision: 1464

Modified:
   trunk/core/src/main/java/org/infinispan/CacheDelegate.java
   trunk/core/src/main/java/org/infinispan/eviction/EvictionManagerImpl.java
   trunk/core/src/main/java/org/infinispan/interceptors/InvocationContextInterceptor.java
Log:
Evictions should fail silently

Modified: trunk/core/src/main/java/org/infinispan/CacheDelegate.java
===================================================================
--- trunk/core/src/main/java/org/infinispan/CacheDelegate.java	2010-02-08 12:17:12 UTC (rev 1463)
+++ trunk/core/src/main/java/org/infinispan/CacheDelegate.java	2010-02-08 12:50:01 UTC (rev 1464)
@@ -263,8 +263,9 @@
    }
 
    public final void evict(K key) {
+      InvocationContext ctx = getInvocationContext();
       EvictCommand command = commandsFactory.buildEvictCommand(key);
-      invoker.invoke(icc.createNonTxInvocationContext(), command);
+      invoker.invoke(ctx, command);
    }
 
    public Configuration getConfiguration() {

Modified: trunk/core/src/main/java/org/infinispan/eviction/EvictionManagerImpl.java
===================================================================
--- trunk/core/src/main/java/org/infinispan/eviction/EvictionManagerImpl.java	2010-02-08 12:17:12 UTC (rev 1463)
+++ trunk/core/src/main/java/org/infinispan/eviction/EvictionManagerImpl.java	2010-02-08 12:50:01 UTC (rev 1464)
@@ -1,6 +1,7 @@
 package org.infinispan.eviction;
 
 import net.jcip.annotations.ThreadSafe;
+import org.infinispan.AdvancedCache;
 import org.infinispan.Cache;
 import org.infinispan.config.Configuration;
 import org.infinispan.container.DataContainer;
@@ -13,7 +14,6 @@
 import org.infinispan.loaders.CacheLoaderManager;
 import org.infinispan.loaders.CacheStore;
 import org.infinispan.util.Util;
-import org.infinispan.util.concurrent.TimeoutException;
 import org.infinispan.util.logging.Log;
 import org.infinispan.util.logging.LogFactory;
 
@@ -22,6 +22,8 @@
 import java.util.concurrent.ScheduledFuture;
 import java.util.concurrent.TimeUnit;
 
+import static org.infinispan.context.Flag.FAIL_SILENTLY;
+
 @ThreadSafe
 public class EvictionManagerImpl implements EvictionManager {
    private static final Log log = LogFactory.getLog(EvictionManagerImpl.class);
@@ -31,7 +33,7 @@
    // components to be injected
    ScheduledExecutorService executor;
    Configuration configuration;
-   Cache cache;
+   Cache<Object, Object> cache;
    CacheLoaderManager cacheLoaderManager;
    DataContainer dataContainer;
    CacheStore cacheStore;
@@ -41,7 +43,7 @@
 
    @Inject
    public void initialize(@ComponentName(KnownComponentNames.EVICTION_SCHEDULED_EXECUTOR) ScheduledExecutorService executor,
-                          Configuration configuration, Cache cache, DataContainer dataContainer, CacheLoaderManager cacheLoaderManager) {
+                          Configuration configuration, Cache<Object, Object> cache, DataContainer dataContainer, CacheLoaderManager cacheLoaderManager) {
       this.executor = executor;
       this.configuration = configuration;
       this.cache = cache;
@@ -108,6 +110,7 @@
       // finally iterate through data container if too big
       int dcsz = dataContainer.size();
       if (dcsz > maxEntries) {
+         AdvancedCache<Object, Object> ac = cache.getAdvancedCache();
          if (trace) {
             log.trace("Data container is larger than maxEntries, size is {0}.  Evicting...", dcsz);
             start = System.currentTimeMillis();
@@ -118,11 +121,7 @@
                dcsz = dataContainer.size();
                if (dcsz > maxEntries) {
                   if (trace) log.trace("Attempting to evict key [{0}]", k);
-                  try {
-                     cache.evict(k);
-                  } catch (TimeoutException te) {
-                     log.trace("Unable to evict key {0} due to a timeout.  Moving on to next possible evictable entry.", k);
-                  }
+                  ac.withFlags(FAIL_SILENTLY).evict(k);
                } else {
                   if (trace) log.trace("Evicted enough entries");
                   break;

Modified: trunk/core/src/main/java/org/infinispan/interceptors/InvocationContextInterceptor.java
===================================================================
--- trunk/core/src/main/java/org/infinispan/interceptors/InvocationContextInterceptor.java	2010-02-08 12:17:12 UTC (rev 1463)
+++ trunk/core/src/main/java/org/infinispan/interceptors/InvocationContextInterceptor.java	2010-02-08 12:50:01 UTC (rev 1464)
@@ -49,7 +49,7 @@
       }
       catch (Throwable th) {
          if (suppressExceptions) {
-            log.trace("Exception while executiong code, failing silently...", th);
+            log.trace("Exception while executing code, failing silently...", th);
             return null;
          } else {
             log.error("Execution error: ", th);



More information about the infinispan-commits mailing list