[ 
https://issues.apache.org/jira/browse/CASSANDRA-12296?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15570067#comment-15570067
 ] 

Kurt Greaves edited comment on CASSANDRA-12296 at 10/12/16 10:28 PM:
---------------------------------------------------------------------

Don't insert your foot there too soon. Bootstrap is fine however you still get 
an incorrect error message if you try and rebuild from the same DC using NTS 
from a DC that doesn't contain the keyspace. When I was testing this case 
apparently the error got masked by another keyspace which makes me think there 
may be another bug here (I will investigate and write up another JIRA if I 
manage to figure it out) i.e:
{code}
 keyspace_name      | durable_writes | replication
--------------------+----------------+-------------------------------------------------------------------------------------
               test |           True |       {'class': 
'org.apache.cassandra.locator.NetworkTopologyStrategy', 'dc1': '1'}

ccm node2 nodetool rebuild test dc2
 nodetool: Unable to find sufficient sources for streaming range 
(-1977532406384460074,-1976661853362798275] in keyspace test with RF=1. 
Consider using NetworkTopologyStrategy for this keyspace.
{code}

In this case, node2 is in dc1, and although test isn't replicated to dc2 it 
still gets to that error message.

I suppose alternatives could be:
1. Make the error more generic (e.g: 'Ensure this keyspace has replicas in the 
source datacentre')
2. Catch this case separately and warn that you can't rebuild from a DC that 
has no replicas.

Something more generic is probably OK and with a bit of thought the user should 
come to a conclusion on how to deal with the issue like increase RF or change 
to NTS - As long as we can be sure this only occurs from rebuilds. I can't see 
any path that leads to here from anywhere other than a rebuild however I 
haven't completely ruled out bootstrap yet.

What do you think [~jjirsa]?


was (Author: kurtg):
Don't insert your foot there too soon. Bootstrap is fine however you still get 
an incorrect error message if you try and rebuild from the same DC using NTS 
from a DC that doesn't contain the keyspace. When I was testing this case 
apparently the error got masked by another keyspace which makes me think there 
may be another bug here (details for which are below) i.e:
{code}
 keyspace_name      | durable_writes | replication
--------------------+----------------+-------------------------------------------------------------------------------------
               test |           True |       {'class': 
'org.apache.cassandra.locator.NetworkTopologyStrategy', 'dc1': '1'}

ccm node2 nodetool rebuild test dc2
 nodetool: Unable to find sufficient sources for streaming range 
(-1977532406384460074,-1976661853362798275] in keyspace test with RF=1. 
Consider using NetworkTopologyStrategy for this keyspace.
{code}

In this case, node2 is in dc1, and although test isn't replicated to dc2 it 
still gets to that error message.

I suppose alternatives could be:
1. Make the error more generic (e.g: 'Ensure this keyspace has replicas in the 
source datacentre')
2. Catch this case separately and warn that you can't rebuild from a DC that 
has no replicas.

Something more generic is probably OK and with a bit of thought the user should 
come to a conclusion on how to deal with the issue like increase RF or change 
to NTS - As long as we can be sure this only occurs from rebuilds. I can't see 
any path that leads to here from anywhere other than a rebuild however I 
haven't completely ruled out bootstrap yet.

What do you think [~jjirsa]?

> system_auth can't be rebuilt by default
> ---------------------------------------
>
>                 Key: CASSANDRA-12296
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-12296
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Jim Witschey
>            Priority: Minor
>              Labels: lhf
>         Attachments: 12296.patch
>
>
> This came up in discussion of CASSANDRA-11687. {{nodetool rebuild}} was 
> failing in a dtest. [~pauloricardomg] explained:
> bq. before [CASSANDRA-11848] the local node could be considered a source, 
> while now sources are restricted only to dc2, so since {{system_auth}} uses 
> {{SimpleStrategy}} depending on the token arrangement there could or not be 
> sources from dc2. Fix is to either use 
> {{-Dcassandra.consistent.rangemovement=false}} or update {{system_auth}} to 
> use {{NetworkTopologyStrategy}} with 2 dcs..
> This is, at the very least, a UX bug. When {{rebuild}} fails, it fails with
> {code}
> nodetool: Unable to find sufficient sources for streaming range 
> (-3287869951390391138,-1624006824486474209] in keyspace system_auth with 
> RF=1.If you want to ignore this, consider using system property 
> -Dcassandra.consistent.rangemovement=false.
> {code}
> which suggests that a user should give up consistency guarantees when it's 
> not necessary.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to