Make sure to increase your block size. It will be painfully slow otherwise. If the data varies in size a great deal, you should just stick with the indexed disk cache. The block is only better if the data is roughly the same size.
Cheers, Aaron --- On Tue, 8/11/09, Tim Cronin <tim.cro...@autonomy.com> wrote: > From: Tim Cronin <tim.cro...@autonomy.com> > Subject: RE: error using block disk cache > To: "JCS Users List" <jcs-users@jakarta.apache.org> > Date: Tuesday, August 11, 2009, 11:04 AM > Thanks! > > -----Original Message----- > From: Aaron Smuts [mailto:asm...@yahoo.com] > > Sent: Tuesday, August 11, 2009 12:28 PM > To: JCS Users List > Subject: RE: error using block disk cache > > > 1.3.3.4-RC has the fix. > > --- On Tue, 8/11/09, Aaron Smuts <asm...@yahoo.com> > wrote: > > > From: Aaron Smuts <asm...@yahoo.com> > > Subject: RE: error using block disk cache > > To: "JCS Users List" <jcs-users@jakarta.apache.org> > > Date: Tuesday, August 11, 2009, 10:24 AM > > > > Optimally the size of the block is the size of the > cache > > element including your key and your data. > > Experiement. Put some in. Get the stats. > > See how many blocks were used. Serialize your > objects > > and see how big ther are. Tweak the config . . . > > > > You want to use as few blocks per item as > possible and you > > don't want to waste space. If you items are all the > > same size, this is easy. If they vary radically, > then > > try to get the data in different regions and configure > the > > different regions to use different block disk caches > with > > tailored block sizes. > > > > --- On Tue, 8/11/09, Tim Cronin <tim.cro...@autonomy.com> > > wrote: > > > > > From: Tim Cronin <tim.cro...@autonomy.com> > > > Subject: RE: error using block disk cache > > > To: "JCS Users List" <jcs-users@jakarta.apache.org> > > > Date: Tuesday, August 11, 2009, 10:18 AM > > > Thanks, > > > > > > What a good rule of thumb for calculating a > > reasonable > > > block size? > > > > > > -----Original Message----- > > > From: Aaron Smuts [mailto:asm...@yahoo.com] > > > > > > Sent: Tuesday, August 11, 2009 12:12 PM > > > To: JCS Users List > > > Subject: RE: error using block disk cache > > > > > > > > > I think it is because one of the loops used a > byte, > > when > > > the number of blocks could be much bigger than > 128. > > > > > > For performance reasons, I'd increase your block > > > size. You don't want to have to do so many > > > reads. Make the blocks about the size of your > > items. > > > > > > I'll fix the bug. > > > > > > Aaron > > > > > > --- On Tue, 8/11/09, Aaron Smuts <asm...@yahoo.com> > > > wrote: > > > > > > > From: Aaron Smuts <asm...@yahoo.com> > > > > Subject: RE: error using block disk cache > > > > To: "JCS Users List" <jcs-users@jakarta.apache.org> > > > > Date: Tuesday, August 11, 2009, 10:03 AM > > > > > > > > I'm having trouble replicating this. I > can't > > see > > > how > > > > it could happen. . . . > > > > > > > > Null items in the unit tests do not cause > this > > > > problem. > > > > > > > > What's the data like? > > > > > > > > Aaron > > > > > > > > > > > > --- On Tue, 8/11/09, Aaron Smuts <asm...@yahoo.com> > > > > wrote: > > > > > > > > > From: Aaron Smuts <asm...@yahoo.com> > > > > > Subject: RE: error using block disk > cache > > > > > To: "JCS Users List" <jcs-users@jakarta.apache.org> > > > > > Date: Tuesday, August 11, 2009, 9:45 > AM > > > > > > > > > > Are you getting this error all the > time, or > > just > > > > > occasionally. Could the item be > null? > > > > > > > > > > Did you specify a disk directory? > > > > > > > > > > Aaron > > > > > > > > > > > > > > > > > > > > --- On Tue, 8/11/09, Tim Cronin <tim.cro...@autonomy.com> > > > > > wrote: > > > > > > > > > > > From: Tim Cronin <tim.cro...@autonomy.com> > > > > > > Subject: RE: error using block > disk > > cache > > > > > > To: "JCS Users List" <jcs-users@jakarta.apache.org> > > > > > > Date: Tuesday, August 11, 2009, > 9:11 > > AM > > > > > > Here's the cache config: > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > ################################################################## > > > > > > > > > > > > # Default settings > > > > > > > > > > > > # http://jakarta.apache.org/jcs/index.html > > > > > > > > > > > > # http://www.jroller.com/page/aspinei/?anchor=jcs_the_good_the_bad > > > > > > > > > > > > > > > > > > > > > > > > > > > ################################################################## > > > > > > > > > > > > jcs.default=DC > > > > > > > > > > > > > > > > > > > > > > > > # cache compression > > > > > > > > > > > > # 0 - OFF > > > > > > > > > > > > # 1 - Best performance > > > > > > > > > > > > # 9 - Best compression > > > > > > > > > > > > > interwoven.cachemanager.compression=0 > > > > > > > > > > > > > > > > > > > > > > > > # mem cache settings > > > > > > > > > > > > > > > > > > > > > > > > > > > jcs.default.cacheattributes=org.apache.jcs.engine.CompositeCacheAttribut > > > > > > es > > > > > > > > > > > > > > > > > > > > > > > > > > > jcs.default.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory > > > > > > .lru.LRUMemoryCache > > > > > > > > > > > > > > > > > > jcs.default.cacheattributes.UseMemoryShrinker=true > > > > > > > > > > > > > > > > > > > > > > > > > > > jcs.default.cacheattributes.ShrinkerIntervalSeconds=300 > > > > > > > > > > > > > > > jcs.default.cacheattributes.MaxSpoolPerRun=500 > > > > > > > > > > > > > > > > > > > > > > > > > > > jcs.default.cacheattributes.MaxMemoryIdleTimeSeconds=3600 > > > > > > > > > > > > > > > > > > > > > > > > # element attributes > > > > > > > > > > > > > > > > > > > > > > > > > > > jcs.default.elementattributes=org.apache.jcs.engine.ElementAttributes > > > > > > > > > > > > > > > jcs.default.elementattributes.MaxLifeSeconds=-1 > > > > > > > > > > > > > > jcs.default.elementattributes.IdleTime=1800 > > > > > > > > > > > > > > > jcs.default.elementattributes.IsEternal=false > > > > > > > > > > > > > > jcs.default.elementattributes.IsSpool=true > > > > > > > > > > > > > > > jcs.default.elementattributes.IsRemote=false > > > > > > > > > > > > > > > jcs.default.elementattributes.IsLateral=false > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > ################################################################## > > > > > > > > > > > > # Page settings > > > > > > > > > > > > > > > > > > > > > > > > > > > ################################################################## > > > > > > > > > > > > jcs.region.page=DC > > > > > > > > > > > > > > > > > > > > > > > > # mem cache settings > > > > > > > > > > > > > > > jcs.region.page.cacheattributes.MaxObjects=500 > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > ################################################################## > > > > > > > > > > > > # Component settings > > > > > > > > > > > > > > > > > > > > > > > > > > > ################################################################## > > > > > > > > > > > > jcs.region.component=DC > > > > > > > > > > > > > > > > > > > > > > > > # mem cache settings > > > > > > > > > > > > > > > > > > jcs.region.component.cacheattributes.MaxObjects=500 > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > ################################################################## > > > > > > > > > > > > # disk cache attribs > > > > > > > > > > > > > > > > > > > > > > > > > > > ################################################################## > > > > > > > > > > > > > > > > > > > > > > > > > > > #jcs.auxiliary.DC=org.apache.jcs.auxiliary.disk.indexed.IndexedDiskCache > > > > > > Factory > > > > > > > > > > > > > > > > > > > > > > > > > > > #jcs.auxiliary.DC.attributes=org.apache.jcs.auxiliary.disk.indexed.Index > > > > > > edDiskCacheAttributes > > > > > > > > > > > > > > > > > > #jcs.auxiliary.DC.attributes.MaxPurgatorySize=10000 > > > > > > > > > > > > > > > #jcs.auxiliary.DC.attributes.MaxKeySize=10240 > > > > > > > > > > > > > > > > > > > > > > > > > > > #jcs.auxiliary.DC.attributes.OptimizeAtRemoveCount=1000 > > > > > > > > > > > > > > > > > > #jcs.auxiliary.DC.attributes.OptimizeOnShutdown=true > > > > > > > > > > > > > > > > > > #jcs.auxiliary.DC.attributes.MaxRecycleBinSize=10000 > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > ################################################################## > > > > > > > > > > > > # disk cache attribs [Block disk > cache > > > settings] > > > > > > > > > > > > > > > > > > > > > > > > > > > ################################################################## > > > > > > > > > > > > > > > > > > > > > > > > > > > jcs.auxiliary.DC=org.apache.jcs.auxiliary.disk.block.BlockDiskCacheFacto > > > > > > ry > > > > > > > > > > > > > > > > > > > > > > > > > > > jcs.auxiliary.DC.attributes=org.apache.jcs.auxiliary.disk.block.BlockDis > > > > > > kCacheAttributes > > > > > > > > > > > > > > > > > > jcs.auxiliary.DC.attributes.MaxPurgatorySize=10000 > > > > > > > > > > > > > > > jcs.auxiliary.DC.attributes.MaxKeySize=10240 > > > > > > > > > > > > > > > jcs.auxiliary.DC.attributes.blockSizeBytes=1024 > > > > > > > > > > > > > > > > > > > > > > > > ________________________________ > > > > > > > > > > > > From: Tim Cronin [mailto:tim.cro...@autonomy.com] > > > > > > > > > > > > Sent: Tuesday, August 11, 2009 > 11:06 > > AM > > > > > > To: jcs-users@jakarta.apache.org > > > > > > Subject: error using block disk > cache > > > > > > > > > > > > > > > > > > > > > > > > We just moved from index to disk, > > using > > > > 1.3.3.3RC > > > > > (see > > > > > > attached > > > > > > configuration file). > > > > > > > > > > > > > > > > > > > > > > > > We are getting the following > error: > > > > > > > > > > > > > > > > > > > > > > > > [8/11/09 8:49:49:969 BST] > 00000042 > > > SystemOut > > > > > > O 08:49:49,968 ERROR > > > > > > [BlockDiskCache] Region > [component] > > Failure > > > > updating > > > > > > element, key: > > > > > > > > > > > > > > > > > > > > > investor:research-funds/fund-supermarket/factsheet/newlocalfactsheet:Pri > > > > > > > > > > > > mary:en-GB:1239855333385:1:hNvdABDjSIp7U7czi+DCuA== > > > > > old: > > > > > > null > > > > > > > > > > > > > > java.lang.ArrayIndexOutOfBoundsException: > > > -128 > > > > > > > > > > > at > > > > > > > > > > > > > > > > > > > > > org.apache.jcs.auxiliary.disk.block.BlockDisk.write(BlockDisk.java:199) > > > > > > > > > > > > at > > > > > > > > > > > > > > > > > > > > > org.apache.jcs.auxiliary.disk.block.BlockDiskCache.processUpdate(BlockDi > > > > > > skCache.java:383) > > > > > > at > > > > > > > > > > > > > > > > > > > > > org.apache.jcs.auxiliary.AbstractAuxiliaryCacheEventLogging.updateWithEv > > > > > > > > > > > > > > > > > > > > > entLogging(AbstractAuxiliaryCacheEventLogging.java:48) > > > > > > > > > > > > at > > > > > > > > > > > > > > > > > > > > > org.apache.jcs.auxiliary.disk.AbstractDiskCache.doUpdate(AbstractDiskCac > > > > > > he.java:828) > > > > > > at > > > > > > > > > > > > > > > > > > > > > org.apache.jcs.auxiliary.disk.AbstractDiskCache$MyCacheListener.handlePu > > > > > > t(AbstractDiskCache.java:685) > > > > > > at > > > > > > > > > > > > > > > > > > > > > org.apache.jcs.engine.CacheEventQueue$PutEvent.doRun(CacheEventQueue.jav > > > > > > a:704) > > > > > > at > > > > > > > > > > > > > > > > > > > > > org.apache.jcs.engine.CacheEventQueue$AbstractCacheEvent.run(CacheEventQ > > > > > > ueue.java:623) > > > > > > at > > > > > > > > > > > > > > > > > > > > > org.apache.jcs.engine.CacheEventQueue$QProcessor.run(CacheEventQueue.jav > > > > > > a:591) > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > --------------------------------------------------------------------- > > > > > To unsubscribe, e-mail: jcs-users-unsubscr...@jakarta.apache.org > > > > > For additional commands, e-mail: jcs-users-h...@jakarta.apache.org > > > > > > > > > > > > > > > > > > > > > > > > --------------------------------------------------------------------- > > > > To unsubscribe, e-mail: jcs-users-unsubscr...@jakarta.apache.org > > > > For additional commands, e-mail: jcs-users-h...@jakarta.apache.org > > > > > > > > > > > > > > > > > --------------------------------------------------------------------- > > > To unsubscribe, e-mail: jcs-users-unsubscr...@jakarta.apache.org > > > For additional commands, e-mail: jcs-users-h...@jakarta.apache.org > > > > > > > > > > > > --------------------------------------------------------------------- > > > To unsubscribe, e-mail: jcs-users-unsubscr...@jakarta.apache.org > > > For additional commands, e-mail: jcs-users-h...@jakarta.apache.org > > > > > > > > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: jcs-users-unsubscr...@jakarta.apache.org > > For additional commands, e-mail: jcs-users-h...@jakarta.apache.org > > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: jcs-users-unsubscr...@jakarta.apache.org > For additional commands, e-mail: jcs-users-h...@jakarta.apache.org > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: jcs-users-unsubscr...@jakarta.apache.org > For additional commands, e-mail: jcs-users-h...@jakarta.apache.org > > --------------------------------------------------------------------- To unsubscribe, e-mail: jcs-users-unsubscr...@jakarta.apache.org For additional commands, e-mail: jcs-users-h...@jakarta.apache.org