On 19 May 2009, at 18:00, Galder Zamarreno wrote:
Manik Surtani wrote:
> I just checked the following in trunk.
> Galder, you may want to do something similar for your JBMAR
> prototype.
> The changes are around InternalCacheEntry and now InternalCacheValue.
> Previously, the marshaller stored an InternalCacheEntry as [key,
> value, canExpire, created, lifespan, lastUsed, maxIdle], setting
> either of the last 4 elements to -1 if they are unused. In a
> system mainly comprising of mortal values, this is wasteful since
> each of the last 2 values - which would be unused - are longs and
> still written to.
> So this change identifies the InternalCacheEntry and writes just
> what is needed, hence the use of specific magic numbers for each of
> the InternalCacheEntry implementations. Using a different magic
> number for each entry type allows me to trim what is written.
> Same approach used for InternalCacheValue.
> Yes, even more ugly switch statements - and this is why we need
> JBMAR to clean this up - if and when it can match performance and
> compactness of the resulting byte array. :-)
This has been done now.
Thanks!
--
Manik Surtani
manik(a)jboss.org
Lead, Infinispan
Lead, JBoss Cache
http://www.infinispan.org
http://www.jbosscache.org