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

Reply via email to