Yes, I think I get it now. "quorum of replicas" != "quorum of nodes"
and I don't think quorum of nodes is ever defined. Thank you,
Konstantin.

Now, I believe I need to change my cluster to store data in two
remaining nodes in DC1, keeping 3 nodes in DC2. I believe nodetool
removetoken is what I need to use. Anything else I can/should do?

On Fri, Sep 2, 2011 at 1:56 PM, Konstantin  Naryshkin
<konstant...@a-bb.net> wrote:
> I think that Oleg may have misunderstood how replicas are selected. If you 
> have 3 nodes in your cluster and a RF of 2, Cassandra first selects what two 
> nodes, out of the 3 will get data, then, and only then does it write it out. 
> The selection is based on the row key, the token of the node, and you choice 
> of partitioner. This means that Cassandra does not need to store what node is 
> responsible for a given row. That information can be recalculated whenever it 
> is needed.
>
> The error that you are getting is because you may have 2 nodes up, those are 
> not the nodes that Cassandra will use to store data.
>
> ----- Original Message -----
> From: "Nate McCall" <n...@datastax.com>
> To: hector-us...@googlegroups.com
> Cc: "Cassandra Users" <user@cassandra.apache.org>
> Sent: Friday, September 2, 2011 4:44:01 PM
> Subject: Re: HUnavailableException: : May not be enough replicas present to 
> handle consistency level.
>
> In your options, you have configured 2 replicas for each data center:
> Options: [DC2:2, DC1:2]
>
> If one of those replicas is down, then LOCAL_QUORUM will fail as there
> is only one replica left 'locally.'
>
>
> On Fri, Sep 2, 2011 at 3:35 PM, Oleg Tsvinev <oleg.tsvi...@gmail.com> wrote:
>> from http://www.datastax.com/docs/0.8/consistency/index:
>>
>> <A “quorum” of replicas is essentially a majority of replicas, or RF /
>> 2 + 1 with any resulting fractions rounded down.>
>>
>> I have RF=2, so majority of replicas is 2/2+1=2 which I have after 3rd
>> node goes down?
>>
>> On Fri, Sep 2, 2011 at 1:22 PM, Nate McCall <n...@datastax.com> wrote:
>>> It looks like you only have 2 replicas configured in each data center?
>>>
>>> If so, LOCAL_QUORUM cannot be achieved with a host down same as with
>>> QUORUM on RF=2 in a single DC cluster.
>>>
>>> On Fri, Sep 2, 2011 at 1:40 PM, Oleg Tsvinev <oleg.tsvi...@gmail.com> wrote:
>>>> I believe I don't quite understand semantics of this exception:
>>>>
>>>> me.prettyprint.hector.api.exceptions.HUnavailableException: : May not
>>>> be enough replicas present to handle consistency level.
>>>>
>>>> Does it mean there *might be* enough?
>>>> Does it mean there *is not* enough?
>>>>
>>>> My case is as following - I have 3 nodes with keyspaces configured as 
>>>> following:
>>>>
>>>> Replication Strategy: org.apache.cassandra.locator.NetworkTopologyStrategy
>>>> Durable Writes: true
>>>> Options: [DC2:2, DC1:2]
>>>>
>>>> Hector can only connect to nodes in DC1 and configured to neither see
>>>> nor connect to nodes in DC2. This is for replication by Cassandra
>>>> means, asynchronously between datacenters DC1 and DC2. Each of 6 total
>>>> nodes can see any of the remaining 5.
>>>>
>>>> and inserts with LOCAL_QUORUM CL work fine when all 3 nodes are up.
>>>> However, this morning one node went down and I started seeing the
>>>> HUnavailableException: : May not be enough replicas present to handle
>>>> consistency level.
>>>>
>>>> I believed if I have 3 nodes and one goes down, two remaining nodes
>>>> are sufficient for my configuration.
>>>>
>>>> Please help me to understand what's going on.
>>>>
>>>
>>
>

Reply via email to