[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