cassandra-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jonathan Ellis <>
Subject Re: caching change between 0.7.0 and 0.7.5
Date Fri, 06 May 2011 19:32:36 GMT
Column objects are treated as immutable so it's quite likely you'll
get back the same Columns (and buffers) if your query hits a local
memtable.  This was possible in 0.7.0 as well.

(This only applies to the StorageProxy interface, if you're going over
Thrift it will do a copy over the network.)

On Thu, May 5, 2011 at 12:34 PM, Paul Loy <> wrote:
> Hi all,
> so I just updated Cassandra from 0.7.0 to 0.7.5. I embed Cassandra in my app
> and use StorageProxy for querying.
> In one of my unit tests I write a column to Cassandra and then read it out
> again twice in quick succession. The second time I now get the same
> ByteBuffer (i.e. same id - same 'physical' HeapByteBuffer) as the first
> call. But as I have consumed this, the position == capacity.
> I have fixed this in my code by simply using ByteBuffer#duplicate, however
> I'm concerned that caching may have changed between versions and want to
> know what the implications of that change may be.
> So my questions are:
> 1) is the Row Cache now enabled by default?
> 2) or is there now some other form of caching that is causing this to happen
> that I should be aware of?
> We're pretty close to deploying into production when we came across a
> critical bug in 0.7.0 (infinite loop in HashMap) which means we have to
> upgrade but I'm concerned that the changes mean our load/stress tests will
> not be valid so just need some info to put my mind at ease!
> Many thanks,
> Paul.
> --
> ---------------------------------------------
> Paul Loy

Jonathan Ellis
Project Chair, Apache Cassandra
co-founder of DataStax, the source for professional Cassandra support

View raw message