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

T Jake Luciani commented on CASSANDRA-4650:
-------------------------------------------

Both but I meant to point to 
[this|http://cassci.datastax.com/job/tjake-4650-dtest/lastCompletedBuild/testReport/repair_tests.incremental_repair_test/TestIncRepair/multiple_repair_test/]
 throws

{code}
ERROR [main] 2016-07-22 16:56:25,438 CassandraDaemon.java:737 - Exception 
encountered during startup
java.lang.IllegalStateException: unable to find sufficient sources for 
streaming range (-6177303831872713717,-5843451309664294558] in keyspace 
system_auth
        at 
org.apache.cassandra.dht.RangeFetchMapCalculator.getGraph(RangeFetchMapCalculator.java:233)
 ~[main/:na]
        at 
org.apache.cassandra.dht.RangeFetchMapCalculator.getRangeFetchMap(RangeFetchMapCalculator.java:60)
 ~[main/:na]
        at 
org.apache.cassandra.dht.RangeStreamer.getOptimizedRangeFetchMap(RangeStreamer.java:291)
 ~[main/:na]
        at 
org.apache.cassandra.dht.RangeStreamer.addRanges(RangeStreamer.java:169) 
~[main/:na]
        at 
org.apache.cassandra.dht.BootStrapper.bootstrap(BootStrapper.java:84) 
~[main/:na]
        at 
org.apache.cassandra.service.StorageService.bootstrap(StorageService.java:1380) 
~[main/:na]
        at 
org.apache.cassandra.service.StorageService.joinTokenRing(StorageService.java:939)
 ~[main/:na]
        at 
org.apache.cassandra.service.StorageService.initServer(StorageService.java:663) 
~[main/:na]
        at 
org.apache.cassandra.service.StorageService.initServer(StorageService.java:548) 
~[main/:na]
        at 
org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:375) 
[main/:na]
        at 
org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:591) 
[main/:na]
        at 
org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:720) 
[main/:na]
{code} 

> RangeStreamer should be smarter when picking endpoints for streaming in case 
> of N >=3 in each DC.  
> ---------------------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-4650
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4650
>             Project: Cassandra
>          Issue Type: Improvement
>    Affects Versions: 1.1.5
>            Reporter: sankalp kohli
>            Assignee: sankalp kohli
>            Priority: Minor
>              Labels: streaming
>         Attachments: CASSANDRA-4650_trunk.txt, photo-1.JPG
>
>   Original Estimate: 24h
>  Remaining Estimate: 24h
>
> getRangeFetchMap method in RangeStreamer should pick unique nodes to stream 
> data from when number of replicas in each DC is three or more. 
> When N>=3 in a DC, there are two options for streaming a range. Consider an 
> example of 4 nodes in one datacenter and replication factor of 3. 
> If a node goes down, it needs to recover 3 ranges of data. With current code, 
> two nodes could get selected as it orders the node by proximity. 
> We ideally will want to select 3 nodes for streaming the data. We can do this 
> by selecting unique nodes for each range.  
> Advantages:
> This will increase the performance of bootstrapping a node and will also put 
> less pressure on nodes serving the data. 
> Note: This does not affect if N < 3 in each DC as then it streams data from 
> only 2 nodes. 



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

Reply via email to