[infinispan-dev] Fwd: Am I missing something ?
Manik Surtani
manik at jboss.org
Tue Apr 20 10:11:41 EDT 2010
WTF! You're right - I'll investigate this in detail. Thanks for spotting/reporting. Care to raise a JIRA?
On 20 Apr 2010, at 14:03, Philippe Van Dyck wrote:
> Ok, I have something weird in CacheLoaderInterceptor :
>
> When I read the same entry, again and again, I end up in loadIfNeeded.
> Each time, the entry is loaded from the cachestore @ InternalCacheEntry loaded = loader.load(key);
> At the end of the method, once we load the entry and wrap it, there is a call to putLoadedEntryInContainer.
>
> The weird thing is that putLoadedEntryInContainer does not put anything in anything... :
>
> private MVCCEntry putLoadedEntryInContainer(InvocationContext ctx, Object key, MVCCEntry entry, InternalCacheEntry loadedEntry) throws Exception {
> boolean entryExists = (loadedEntry != null);
> if (log.isTraceEnabled()) log.trace("Entry exists in loader? " + entryExists);
>
> if (getStatisticsEnabled()) {
> if (entryExists) {
> cacheLoads.incrementAndGet();
> } else {
> cacheMisses.incrementAndGet();
> }
> }
>
> if (entryExists) {
> sendNotification(key, true, ctx);
> entry.setValue(loadedEntry.getValue());
> entry.setLifespan(loadedEntry.getLifespan());
> entry.setMaxIdle(loadedEntry.getMaxIdle());
> // TODO shouldn't we also be setting last used and created timestamps?
> entry.setValid(true);
>
> notifier.notifyCacheEntryLoaded(key, false, ctx);
> sendNotification(key, false, ctx);
> }
>
> return entry;
> }
>
>
> So it looks obvious that the entry is not stored...
>
> What am I missing ?
>
> Cheers,
>
> phil
>
> ---------- Forwarded message ----------
> From: Philippe Van Dyck <pvdyck at gmail.com>
> Date: Mon, Apr 19, 2010 at 7:26 PM
> Subject: Am I missing something ?
> To: infinispan -Dev List <infinispan-dev at lists.jboss.org>
>
>
> Hi All,
>
> just a quick question.. what could motivate Infinispan to check my store *each* time I get an entry from the its cache ??
>
> While I was debugging the BlobCacheStore I noticed that all my 'get' endend up in a decompression of an entry downloaded from S3...
>
> Did I miss somthing in my config ?:
>
> 1) jgroups as transport
> 2) jmx enabled
> 3) transaction enabled (Atomikos)
> 4) distribution mode
> 5) l1 enabled
> 6) two owners (actually only one alive... does this have an impact ?)
> 7) no passivation
> 8) cache is shared
> 9) cache is no preloaded
> 10) then the config for the cache store
> 11) eviction manual (my own)
> 12) one minute max locking
>
> And *each* time I 'get' something from the cache... it goes to the store.
>
> I must be missing something ;-)
>
> phil
>
> <?xml version="1.0" encoding="UTF-8"?>
>
> <infinispan xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xmlns="urn:infinispan:config:4.0">
> <global>
> <transport
> transportClass="org.infinispan.remoting.transport.jgroups.JGroupsTransport">
> <properties>
> <property name="configurationFile" value="jgroups.xml" />
> </properties>
> </transport>
> <globalJmxStatistics enabled="true" />
> </global>
>
>
>
> <namedCache name="qi4j">
> <jmxStatistics enabled="true" />
> <transaction
> transactionManagerLookupClass="org.qi4j.entitystore.s3jclouds.AtomikosTransactionManagerLookup" />
> <clustering mode="distribution">
> <l1 enabled="true" lifespan="100000" />
> <hash numOwners="2" rehashRpcTimeout="120000" />
> </clustering>
>
> <loaders passivation="false" shared="true" preload="false">
>
> <loader
> class="org.qi4j.entitystore.s3jclouds.cacheStore.Bzip2CloudCacheStore"
> fetchPersistentState="false" ignoreModifications="false"
> purgeOnStartup="false" purgeSynchronously="true">
>
> <properties>
> <property name="identity" value="nahnah" />
> <property name="password" value="nah" />
> <property name="bucketPrefix" value="storetest2" />
> <property name="cloudService" value="s3" />
> </properties>
> </loader>
> </loaders>
>
> <!--
> <deadlockDetection enabled="true"
> spinDuration="1000"></deadlockDetection>
> -->
> <eviction strategy="LRU" wakeUpInterval="-1" maxEntries="1" />
>
> <locking lockAcquisitionTimeout="60000" concurrencyLevel="32" />
>
>
>
> <unsafe unreliableReturnValues="true" />
>
> </namedCache>
> </infinispan>
>
>
>
>
> _______________________________________________
> infinispan-dev mailing list
> infinispan-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/infinispan-dev
--
Manik Surtani
manik at jboss.org
Lead, Infinispan
Lead, JBoss Cache
http://www.infinispan.org
http://www.jbosscache.org
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/infinispan-dev/attachments/20100420/015bbd88/attachment-0001.html
More information about the infinispan-dev
mailing list