cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "T Jake Luciani (JIRA)" <>
Subject [jira] [Commented] (CASSANDRA-4650) RangeStreamer should be smarter when picking endpoints for streaming in case of N >=3 in each DC.
Date Tue, 26 Jul 2016 18:48:21 GMT


T Jake Luciani commented on CASSANDRA-4650:

Both but I meant to point to [this|]

ERROR [main] 2016-07-22 16:56:25,438 - Exception encountered during
java.lang.IllegalStateException: unable to find sufficient sources for streaming range (-6177303831872713717,-5843451309664294558]
in keyspace system_auth
	at org.apache.cassandra.dht.RangeFetchMapCalculator.getGraph(
	at org.apache.cassandra.dht.RangeFetchMapCalculator.getRangeFetchMap(
	at org.apache.cassandra.dht.RangeStreamer.getOptimizedRangeFetchMap(
	at org.apache.cassandra.dht.RangeStreamer.addRanges( ~[main/:na]
	at org.apache.cassandra.dht.BootStrapper.bootstrap( ~[main/:na]
	at org.apache.cassandra.service.StorageService.bootstrap( ~[main/:na]
	at org.apache.cassandra.service.StorageService.joinTokenRing( ~[main/:na]
	at org.apache.cassandra.service.StorageService.initServer( ~[main/:na]
	at org.apache.cassandra.service.StorageService.initServer( ~[main/:na]
	at org.apache.cassandra.service.CassandraDaemon.setup( [main/:na]
	at org.apache.cassandra.service.CassandraDaemon.activate( [main/:na]
	at org.apache.cassandra.service.CassandraDaemon.main( [main/:na]

> RangeStreamer should be smarter when picking endpoints for streaming in case of N >=3
in each DC.  
> ---------------------------------------------------------------------------------------------------
>                 Key: CASSANDRA-4650
>                 URL:
>             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

This message was sent by Atlassian JIRA

View raw message