On Sun, Nov 28, 2010 at 6:26 PM, David Boxenhorn <da...@lookin2.com> wrote: > Hints only happen when a node is unavailable and you are writing with CL.ANY > > If you never write with CL.ANY then you can turn off hinted handoff.
Hints happens at any consistency level. But they never helps to reach the consistency level requirements, except at CL.ANY. To say this otherwise, HH are (only) useful to make dead nodes 'catch up' quicker when they are back up (that is, without waiting for a read-repair or a nodetool repair to happen). But they doesn't help a write to work where it wouldn't have without HH. Except at CL.ANY. At CL.ANY, even if all the replicas for the data you are writting are dead, the write is still accepted and a hint will be used. -- Sylvain > > How do I reconcile this? > > > On Sun, Nov 28, 2010 at 7:11 PM, Jake Luciani <jak...@gmail.com> wrote: >> >> If you read/write data with quorum then you can safely take a node down in >> this scenario. Â Subsequent writes will use hinted handoff to be passed to >> the node when it comes back up. >> More info is here:Â http://wiki.apache.org/cassandra/HintedHandoff >> >> Does that answer your question? >> -Jake >> >> On Sun, Nov 28, 2010 at 9:42 AM, Ran Tavory <ran...@gmail.com> wrote: >>> >>> to me it makes sense that if hinted handoff is off then cassandra cannot >>> satisfy 2 out of every 3rd writes writes when one of the nodes is down since >>> this node is the designated node of 2/3 writes. >>> But I don't remember reading this somewhere. Does hinted handoff affect >>> David's situation? >>> (David, did you disable HH in your storage-config? >>> <HintedHandoffEnabled>false</HintedHandoffEnabled>) >>> >>> On Sun, Nov 28, 2010 at 4:32 PM, David Boxenhorn <da...@lookin2.com> >>> wrote: >>>> >>>> For the vast majority of my data usage eventual consistency is fine >>>> (i.e. CL=ONE) but I have a small amount of critical data for which I read >>>> and write using CL=QUORUM. >>>> >>>> If I have a cluster with 3 nodes and RF=2, and CL=QUORUM does that mean >>>> that a value can be read from or written to any 2 nodes, or does it have to >>>> be the particular 2 nodes that store the data? If it is the particular 2 >>>> nodes that store the data, that means that I can't even take down one node, >>>> since it will be the mandatory 2nd node for 1/3 of my data... >>> >>> >>> >>> -- >>> /Ran >> > >