You set the consistency with every request. Usually a client library will let you set a default one for all write/read requests. I don't know if Hector lets you set a default consistency level per CF. Take a look at the Hector docs or ask it in the Hector mailing list.
Shimi On Thu, Mar 29, 2012 at 11:47 AM, Tamar Fraenkel <ta...@tok-media.com>wrote: > Can this be set on a CF basis. > Only this CF needs higher consistency level. > Thanks, > Tamar > > *Tamar Fraenkel * > Senior Software Engineer, TOK Media > > [image: Inline image 1] > > ta...@tok-media.com > Tel: +972 2 6409736 > Mob: +972 54 8356490 > Fax: +972 2 5612956 > > > > > > On Thu, Mar 29, 2012 at 10:44 AM, Shimi Kiviti <shim...@gmail.com> wrote: > >> Like everything else in Cassandra, If you need full consistency you need >> to make sure that you have the right combination of (write consistency >> level) + (read consistency level) >> >> if >> W = write consistency level >> R = read consistency level >> N = replication factor >> then >> W + R > N >> >> Shimi >> >> >> On Thu, Mar 29, 2012 at 10:09 AM, Tamar Fraenkel <ta...@tok-media.com>wrote: >> >>> Hi! >>> Asking again, as I didn't get responses :) >>> >>> I have a ring with 3 nodes and replication factor of 2. >>> I have counter cf with the following definition: >>> >>> CREATE COLUMN FAMILY tk_counters >>> with comparator = 'UTF8Type' >>> and default_validation_class = 'CounterColumnType' >>> and key_validation_class = 'CompositeType(UTF8Type,UUIDType)' >>> and replicate_on_write = true; >>> >>> In my code (Java, Hector), I increment a counter and then read it. >>> Is it possible that the value read will be the value before increment? >>> If yes, how can I ensure it does not happen. All my reads and writes are >>> done with consistency level one. >>> If this is consistency issue, can I do only the actions on tk_counters >>> column family with a higher consistency level? >>> What does replicate_on_write mean? I thought this should help, but maybe >>> even if replicating after write, my read happen before replication >>> finished and it returns value from a still not updated node. >>> >>> My increment code is: >>> Mutator<Composite> mutator = >>> HFactory.createMutator(keyspace, >>> CompositeSerializer.get()); >>> mutator.incrementCounter(key,"tk_counters", columnName, inc); >>> mutator.execute(); >>> >>> My read counter code is: >>> CounterQuery<Composite,String> query = >>> createCounterColumnQuery(keyspace, >>> CompositeSerializer.get(), StringSerializer.get()); >>> query.setColumnFamily("tk_counters"); >>> query.setKey(key); >>> query.setName(columnName); >>> QueryResult<HCounterColumn<String>> r = query.execute(); >>> return r.get().getValue(); >>> >>> Thanks, >>> *Tamar Fraenkel * >>> Senior Software Engineer, TOK Media >>> >>> [image: Inline image 1] >>> >>> ta...@tok-media.com >>> Tel: +972 2 6409736 >>> Mob: +972 54 8356490 >>> Fax: +972 2 5612956 >>> >>> >>> >>> >> >
<<tokLogo.png>>