using NTS, you get a an error (datacenter has no more endpoints) when there are 
no nodes in a DC
------------------------------------------------------------------------------------------------

                 Key: CASSANDRA-2456
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2456
             Project: Cassandra
          Issue Type: Bug
          Components: Core
    Affects Versions: 0.7.4
            Reporter: Josep M. Blanquer


If one creates a brand new DC in the NTS (NetworkTopologyStrategy) for which no 
node has been seen, you'll get exceptions for any write consistency level after 
that.

Note that you don't get the problem if you have a DC for which you have all 
nodes marked 'down'. It seems just a bug when there are 0 nodes seen in the DC.

To reproduce:
1- Go to a running NTS cluster, and add a new DC in the strategy options. I.e., 
from the console, assuming you have DC1 and DC2 normally, add a DC3:
update keyspace WhateverKeyspace with strategy_options=[{DC1:2,DC2:1,DC3:1}];   
 
2- Try to write...and you'll get:
java.lang.IllegalStateException: datacenter (DC3) has no more endpoints, (1) 
replicas still needed

but if you boot a node in DC3, and then stop it...the writes will succeed.

I believe it should always succeed to be consistent?
Otherwise one needs to boot nodes in the right DCs, get the snitches propagated 
and all...all before changing the NTS strategy options. Maybe that's fine...but 
it feels inconsistent with succeeding when a whole DC is down.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to