I'm using the Hector defaults, which are QUORUM for reads and writes.

On 9/3/2010 3:18 PM, Nick Telford wrote:
Are you using QUORUM for both writes and reads?

The behaviour you're seeing sounds like something I'd expect to see if you used NONE for writes.

On 3 September 2010 14:12, Hugo <hugo@unitedgames.com> wrote:
I'm using QUORUM, but in my single-node setup this doesn't matter IMHO.

On 9/3/2010 1:51 PM, Nick Telford wrote:
Which ConsistencyLevels did you use for your batchMutate() and getSlice() operations?

ConsistencyLevels directly dictate the level of consistency you will get with your data.


Nick Telford

On 3 September 2010 12:03, Hugo <hugo@unitedgames.com> wrote:

I'm performing tests with Cassandra 0.6.5 with Hector 0.6.0-14 on a single machine (one node cluster). I've noticed an issue with consistency.

In my tests I perform a KeySpace.batchMutate() to update a column and immediately after that I perform a KeySpace.getSlice() on the same column (from within the same thread). I noticed that occasionally I get back the previous value rather than the value I've just written.

My guess is that this occurs because Hector uses pooled connections and both my requests are executed on different connections. I suspect this causes a race condition in Cassandra between the getSlice() and the batchMutate().

Can anyone confirm my suspicions and does anyone have a solution for this?

Groets, Hugo.