cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Nick Bailey (JIRA)" <j...@apache.org>
Subject [jira] Commented: (CASSANDRA-1427) Optimize loadbalance/move for moves within the current range
Date Tue, 01 Feb 2011 16:02:29 GMT

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

Nick Bailey commented on CASSANDRA-1427:
----------------------------------------

Regarding the patch:
1. There is no need for the multiple loadbalance method signatures. Move is for specifying
a token. Loadbalance is for letting c* choose.
2. The general approach seems like it should work but there are a few things missing.
* The pending ranges calculation needs to include moving nodes. This calculation is what causes
writes to go to all the right nodes when a node is entering/leaving the ring so that writes
that happened during the ring change but weren't necessarily streamed aren't lost. 
* Along with the new application state, SS needs to handle that state. When the moving node
gossips the moving state to other nodes, they should update their pending ranges as well.
This means the token the node is moving to will need to be included in the state.
* Once the move is completed the node needs to return to a normal state
* Along with that the node needs to be removed from the moving nodes list in TMD, so the pending
ranges calculation will be correct again.
* Along with the additional Application state, SS needs to handle that state in the onChange
method

> Optimize loadbalance/move for moves within the current range
> ------------------------------------------------------------
>
>                 Key: CASSANDRA-1427
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-1427
>             Project: Cassandra
>          Issue Type: Sub-task
>          Components: Core
>    Affects Versions: 0.7 beta 1
>            Reporter: Nick Bailey
>            Assignee: Pavel Yaskevich
>             Fix For: 0.8
>
>         Attachments: CASSANDRA-1427.patch
>
>   Original Estimate: 42h
>          Time Spent: 42h
>  Remaining Estimate: 0h
>
> Currently our move/loadbalance operations only implement case 2 of the Ruhl algorithm
described at https://issues.apache.org/jira/browse/CASSANDRA-192#action_12713079.
> We should add functionality to optimize moves that take/give ranges to a node's direct
neighbors.

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

        

Mime
View raw message