You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Sam Overton (Created) (JIRA)" <ji...@apache.org> on 2012/04/05 15:45:24 UTC

[jira] [Created] (CASSANDRA-4122) Bootstrap and decommission with multiple ranges for vnodes

Bootstrap and decommission with multiple ranges for vnodes
----------------------------------------------------------

                 Key: CASSANDRA-4122
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4122
             Project: Cassandra
          Issue Type: Sub-task
            Reporter: Sam Overton
            Assignee: Sam Overton




--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-4122) Bootstrap and decommission with multiple ranges for vnodes

Posted by "Eric Evans (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-4122?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Eric Evans updated CASSANDRA-4122:
----------------------------------

    Fix Version/s: 1.2
    
> Bootstrap and decommission with multiple ranges for vnodes
> ----------------------------------------------------------
>
>                 Key: CASSANDRA-4122
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4122
>             Project: Cassandra
>          Issue Type: Sub-task
>          Components: Core
>            Reporter: Sam Overton
>            Assignee: Sam Overton
>             Fix For: 1.2
>
>
> Bootstrap:
> * New config parameter num_tokens which is used iff initial_token is not set. 
> * Both initial_token and replace_token will allow a comma-separated list of tokens so multiple tokens can be configured explicitly if required.
> * Bootstrapper.getBalancedToken will be deprecated and used only in the case that num_tokens == 1. Instead, if initial token is not specified, num_tokens tokens will be randomly chosen.
> * The existing logic can be used to calculate the new ranges which must be streamed.
> Decommission:
> * The existing logic can be used with some minor modifications to account for multiple tokens per host
> _Edit0: appended patch information._
> _Edit1: added 03_group_stream_out_ranges patch._
> h3. Patches
> ||Compare||Raw diff||Description||
> |[01_bootstrap_decommission|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission]|[01_bootstrap_decommission.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission.diff]|No Description|
> |[02_remove_tokens|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens]|[02_remove_tokens.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens.diff]|No Description|
> |[03_group_stream_out_ranges|https://github.com/acunu/cassandra/compare/top-bases/p/4122/03_group_stream_out_ranges...p/4122/03_group_stream_out_ranges]|[03_group_stream_out_ranges.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/03_group_stream_out_ranges...p/4122/03_group_stream_out_ranges.diff]|No Description|
> ----
> _Note: These are branches managed with TopGit. If you are applying the patch output manually, you will either need to filter the TopGit metadata files (i.e. {{wget -O - <url> | filterdiff -x*.topdeps -x*.topmsg | patch -p1}}), or remove them afterward ({{rm .topmsg .topdeps}})._

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-4122) Bootstrap and decommission with multiple ranges for vnodes

Posted by "Sam Overton (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-4122?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13410267#comment-13410267 ] 

Sam Overton commented on CASSANDRA-4122:
----------------------------------------

Good catch. Fixed: https://github.com/acunu/cassandra/commit/5bb74506b25b48431c958784c5daf9501bd7b50b
                
> Bootstrap and decommission with multiple ranges for vnodes
> ----------------------------------------------------------
>
>                 Key: CASSANDRA-4122
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4122
>             Project: Cassandra
>          Issue Type: Sub-task
>          Components: Core
>            Reporter: Sam Overton
>            Assignee: Sam Overton
>
> Bootstrap:
> * New config parameter num_tokens which is used iff initial_token is not set. 
> * Both initial_token and replace_token will allow a comma-separated list of tokens so multiple tokens can be configured explicitly if required.
> * Bootstrapper.getBalancedToken will be deprecated and used only in the case that num_tokens == 1. Instead, if initial token is not specified, num_tokens tokens will be randomly chosen.
> * The existing logic can be used to calculate the new ranges which must be streamed.
> Decommission:
> * The existing logic can be used with some minor modifications to account for multiple tokens per host
> _Edit0: appended patch information._
> _Edit1: added 03_group_stream_out_ranges patch._
> h3. Patches
> ||Compare||Raw diff||Description||
> |[01_bootstrap_decommission|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission]|[01_bootstrap_decommission.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission.diff]|No Description|
> |[02_remove_tokens|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens]|[02_remove_tokens.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens.diff]|No Description|
> |[03_group_stream_out_ranges|https://github.com/acunu/cassandra/compare/top-bases/p/4122/03_group_stream_out_ranges...p/4122/03_group_stream_out_ranges]|[03_group_stream_out_ranges.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/03_group_stream_out_ranges...p/4122/03_group_stream_out_ranges.diff]|No Description|
> ----
> _Note: These are branches managed with TopGit. If you are applying the patch output manually, you will either need to filter the TopGit metadata files (i.e. {{wget -O - <url> | filterdiff -x*.topdeps -x*.topmsg | patch -p1}}), or remove them afterward ({{rm .topmsg .topdeps}})._

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-4122) Bootstrap and decommission with multiple ranges for vnodes

Posted by "Sam Overton (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-4122?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402204#comment-13402204 ] 

Sam Overton commented on CASSANDRA-4122:
----------------------------------------

Added new patch: 03_group_stream_out_ranges

This is a small patch to modify StorageService.streamRanges (used by decommission and move) so that it creates a single streaming session for all ranges instead of one session for each.
                
> Bootstrap and decommission with multiple ranges for vnodes
> ----------------------------------------------------------
>
>                 Key: CASSANDRA-4122
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4122
>             Project: Cassandra
>          Issue Type: Sub-task
>          Components: Core
>            Reporter: Sam Overton
>            Assignee: Sam Overton
>
> Bootstrap:
> * New config parameter num_tokens which is used iff initial_token is not set. 
> * Both initial_token and replace_token will allow a comma-separated list of tokens so multiple tokens can be configured explicitly if required.
> * Bootstrapper.getBalancedToken will be deprecated and used only in the case that num_tokens == 1. Instead, if initial token is not specified, num_tokens tokens will be randomly chosen.
> * The existing logic can be used to calculate the new ranges which must be streamed.
> Decommission:
> * The existing logic can be used with some minor modifications to account for multiple tokens per host
> _Edit0: appended patch information._
> _Edit1: added 03_group_stream_out_ranges patch._
> h3. Patches
> ||Compare||Raw diff||Description||
> |[01_bootstrap_decommission|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission]|[01_bootstrap_decommission.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission.diff]|No Description|
> |[02_remove_tokens|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens]|[02_remove_tokens.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens.diff]|No Description|
> |[03_group_stream_out_ranges|https://github.com/acunu/cassandra/compare/top-bases/p/4122/03_group_stream_out_ranges...p/4122/03_group_stream_out_ranges]|[03_group_stream_out_ranges.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/03_group_stream_out_ranges...p/4122/03_group_stream_out_ranges.diff]|No Description|
> ----
> _Note: These are branches managed with TopGit. If you are applying the patch output manually, you will either need to filter the TopGit metadata files (i.e. {{wget -O - <url> | filterdiff -x*.topdeps -x*.topmsg | patch -p1}}), or remove them afterward ({{rm .topmsg .topdeps}})._

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-4122) Bootstrap and decommission with multiple ranges for vnodes

Posted by "Eric Evans (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-4122?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402554#comment-13402554 ] 

Eric Evans commented on CASSANDRA-4122:
---------------------------------------

In general, this was done for several reasons (on my part anyway):

# Many (all?) of them are public methods, so could be used elsewhere (in theory).
# In certain cases, earlier patches introduced a plural version, but didn't convert every use of the singular (typically because it was out of scope for that patch).  In a few cases, there are still some uses of the singular form (mostly tests by the look of it).
# At the time, it often seemed least disruptive / easiest-to-review, especially across a series of changes (not sure that ends up being true, though).

TL;DR I think it was the result of a conservative approach

I personally have no objection to removing, instead of deprecating these methods though.
                
> Bootstrap and decommission with multiple ranges for vnodes
> ----------------------------------------------------------
>
>                 Key: CASSANDRA-4122
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4122
>             Project: Cassandra
>          Issue Type: Sub-task
>          Components: Core
>            Reporter: Sam Overton
>            Assignee: Sam Overton
>
> Bootstrap:
> * New config parameter num_tokens which is used iff initial_token is not set. 
> * Both initial_token and replace_token will allow a comma-separated list of tokens so multiple tokens can be configured explicitly if required.
> * Bootstrapper.getBalancedToken will be deprecated and used only in the case that num_tokens == 1. Instead, if initial token is not specified, num_tokens tokens will be randomly chosen.
> * The existing logic can be used to calculate the new ranges which must be streamed.
> Decommission:
> * The existing logic can be used with some minor modifications to account for multiple tokens per host
> _Edit0: appended patch information._
> _Edit1: added 03_group_stream_out_ranges patch._
> h3. Patches
> ||Compare||Raw diff||Description||
> |[01_bootstrap_decommission|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission]|[01_bootstrap_decommission.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission.diff]|No Description|
> |[02_remove_tokens|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens]|[02_remove_tokens.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens.diff]|No Description|
> |[03_group_stream_out_ranges|https://github.com/acunu/cassandra/compare/top-bases/p/4122/03_group_stream_out_ranges...p/4122/03_group_stream_out_ranges]|[03_group_stream_out_ranges.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/03_group_stream_out_ranges...p/4122/03_group_stream_out_ranges.diff]|No Description|
> ----
> _Note: These are branches managed with TopGit. If you are applying the patch output manually, you will either need to filter the TopGit metadata files (i.e. {{wget -O - <url> | filterdiff -x*.topdeps -x*.topmsg | patch -p1}}), or remove them afterward ({{rm .topmsg .topdeps}})._

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-4122) Bootstrap and decommission with multiple ranges for vnodes

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-4122?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Ellis updated CASSANDRA-4122:
--------------------------------------

    Reviewer: brandon.williams
    
> Bootstrap and decommission with multiple ranges for vnodes
> ----------------------------------------------------------
>
>                 Key: CASSANDRA-4122
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4122
>             Project: Cassandra
>          Issue Type: Sub-task
>          Components: Core
>            Reporter: Sam Overton
>            Assignee: Sam Overton
>
> Bootstrap:
> * New config parameter num_tokens which is used iff initial_token is not set. 
> * Both initial_token and replace_token will allow a comma-separated list of tokens so multiple tokens can be configured explicitly if required.
> * Bootstrapper.getBalancedToken will be deprecated and used only in the case that num_tokens == 1. Instead, if initial token is not specified, num_tokens tokens will be randomly chosen.
> * The existing logic can be used to calculate the new ranges which must be streamed.
> Decommission:
> * The existing logic can be used with some minor modifications to account for multiple tokens per host
> _Edit0: appended patch information._
> h3. Patches
> ||Compare||Raw diff||Description||
> |[01_bootstrap_decommission|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission]|[01_bootstrap_decommission.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission.diff]|No Description|
> |[02_remove_tokens|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens]|[02_remove_tokens.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens.diff]|No Description|
> ----
> _Note: These are branches managed with TopGit. If you are applying the patch output manually, you will either need to filter the TopGit metadata files (i.e. {{wget -O - <url> | filterdiff -x*.topdeps -x*.topmsg | patch -p1}}), or remove them afterward ({{rm .topmsg .topdeps}})._

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-4122) Bootstrap and decommission with multiple ranges for vnodes

Posted by "Brandon Williams (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-4122?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402573#comment-13402573 ] 

Brandon Williams commented on CASSANDRA-4122:
---------------------------------------------

I think I'd prefer removal if they're basically unused (aside from tests we can fix) to avoid confusion for people unfamiliar with this in the future.
                
> Bootstrap and decommission with multiple ranges for vnodes
> ----------------------------------------------------------
>
>                 Key: CASSANDRA-4122
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4122
>             Project: Cassandra
>          Issue Type: Sub-task
>          Components: Core
>            Reporter: Sam Overton
>            Assignee: Sam Overton
>
> Bootstrap:
> * New config parameter num_tokens which is used iff initial_token is not set. 
> * Both initial_token and replace_token will allow a comma-separated list of tokens so multiple tokens can be configured explicitly if required.
> * Bootstrapper.getBalancedToken will be deprecated and used only in the case that num_tokens == 1. Instead, if initial token is not specified, num_tokens tokens will be randomly chosen.
> * The existing logic can be used to calculate the new ranges which must be streamed.
> Decommission:
> * The existing logic can be used with some minor modifications to account for multiple tokens per host
> _Edit0: appended patch information._
> _Edit1: added 03_group_stream_out_ranges patch._
> h3. Patches
> ||Compare||Raw diff||Description||
> |[01_bootstrap_decommission|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission]|[01_bootstrap_decommission.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission.diff]|No Description|
> |[02_remove_tokens|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens]|[02_remove_tokens.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens.diff]|No Description|
> |[03_group_stream_out_ranges|https://github.com/acunu/cassandra/compare/top-bases/p/4122/03_group_stream_out_ranges...p/4122/03_group_stream_out_ranges]|[03_group_stream_out_ranges.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/03_group_stream_out_ranges...p/4122/03_group_stream_out_ranges.diff]|No Description|
> ----
> _Note: These are branches managed with TopGit. If you are applying the patch output manually, you will either need to filter the TopGit metadata files (i.e. {{wget -O - <url> | filterdiff -x*.topdeps -x*.topmsg | patch -p1}}), or remove them afterward ({{rm .topmsg .topdeps}})._

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-4122) Bootstrap and decommission with multiple ranges for vnodes

Posted by "Sam Overton (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-4122?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13411688#comment-13411688 ] 

Sam Overton commented on CASSANDRA-4122:
----------------------------------------

Added num_tokens note to NEWS.txt: https://github.com/acunu/cassandra/commit/c612a2e9ea261c66578fefd60d18c961687b26a2
                
> Bootstrap and decommission with multiple ranges for vnodes
> ----------------------------------------------------------
>
>                 Key: CASSANDRA-4122
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4122
>             Project: Cassandra
>          Issue Type: Sub-task
>          Components: Core
>            Reporter: Sam Overton
>            Assignee: Sam Overton
>
> Bootstrap:
> * New config parameter num_tokens which is used iff initial_token is not set. 
> * Both initial_token and replace_token will allow a comma-separated list of tokens so multiple tokens can be configured explicitly if required.
> * Bootstrapper.getBalancedToken will be deprecated and used only in the case that num_tokens == 1. Instead, if initial token is not specified, num_tokens tokens will be randomly chosen.
> * The existing logic can be used to calculate the new ranges which must be streamed.
> Decommission:
> * The existing logic can be used with some minor modifications to account for multiple tokens per host
> _Edit0: appended patch information._
> _Edit1: added 03_group_stream_out_ranges patch._
> h3. Patches
> ||Compare||Raw diff||Description||
> |[01_bootstrap_decommission|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission]|[01_bootstrap_decommission.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission.diff]|No Description|
> |[02_remove_tokens|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens]|[02_remove_tokens.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens.diff]|No Description|
> |[03_group_stream_out_ranges|https://github.com/acunu/cassandra/compare/top-bases/p/4122/03_group_stream_out_ranges...p/4122/03_group_stream_out_ranges]|[03_group_stream_out_ranges.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/03_group_stream_out_ranges...p/4122/03_group_stream_out_ranges.diff]|No Description|
> ----
> _Note: These are branches managed with TopGit. If you are applying the patch output manually, you will either need to filter the TopGit metadata files (i.e. {{wget -O - <url> | filterdiff -x*.topdeps -x*.topmsg | patch -p1}}), or remove them afterward ({{rm .topmsg .topdeps}})._

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-4122) Bootstrap and decommission with multiple ranges for vnodes

Posted by "Eric Evans (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-4122?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Eric Evans updated CASSANDRA-4122:
----------------------------------

    Description: 
Bootstrap:
* New config parameter num_tokens which is used iff initial_token is not set. 
* Both initial_token and replace_token will allow a comma-separated list of tokens so multiple tokens can be configured explicitly if required.
* Bootstrapper.getBalancedToken will be deprecated and used only in the case that num_tokens == 1. Instead, if initial token is not specified, num_tokens tokens will be randomly chosen.
* The existing logic can be used to calculate the new ranges which must be streamed.

Decommission:
* The existing logic can be used with some minor modifications to account for multiple tokens per host

_Edit0: appended patch information._

h3. Patches
||Compare||Raw diff||Description||
|[01_bootstrap_decommission|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission]|[01_bootstrap_decommission.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission.diff]|No Description|
|[02_remove_tokens|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens]|[02_remove_tokens.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens.diff]|No Description|

----

_Note: These are branches managed with TopGit. If you are applying the patch output manually, you will either need to filter the TopGit metadata files (i.e. {{wget -O - <url> | filterdiff -x*.topdeps -x*.topmsg | patch -p1}}), or remove them afterward ({{rm .topmsg .topdeps}})._


  was:
Bootstrap:
* New config parameter num_tokens which is used iff initial_token is not set. 
* Both initial_token and replace_token will allow a comma-separated list of tokens so multiple tokens can be configured explicitly if required.
* Bootstrapper.getBalancedToken will be deprecated and used only in the case that num_tokens == 1. Instead, if initial token is not specified, num_tokens tokens will be randomly chosen.
* The existing logic can be used to calculate the new ranges which must be streamed.

Decommission:
* The existing logic can be used with some minor modifications to account for multiple tokens per host


    
> Bootstrap and decommission with multiple ranges for vnodes
> ----------------------------------------------------------
>
>                 Key: CASSANDRA-4122
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4122
>             Project: Cassandra
>          Issue Type: Sub-task
>          Components: Core
>            Reporter: Sam Overton
>            Assignee: Sam Overton
>
> Bootstrap:
> * New config parameter num_tokens which is used iff initial_token is not set. 
> * Both initial_token and replace_token will allow a comma-separated list of tokens so multiple tokens can be configured explicitly if required.
> * Bootstrapper.getBalancedToken will be deprecated and used only in the case that num_tokens == 1. Instead, if initial token is not specified, num_tokens tokens will be randomly chosen.
> * The existing logic can be used to calculate the new ranges which must be streamed.
> Decommission:
> * The existing logic can be used with some minor modifications to account for multiple tokens per host
> _Edit0: appended patch information._
> h3. Patches
> ||Compare||Raw diff||Description||
> |[01_bootstrap_decommission|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission]|[01_bootstrap_decommission.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission.diff]|No Description|
> |[02_remove_tokens|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens]|[02_remove_tokens.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens.diff]|No Description|
> ----
> _Note: These are branches managed with TopGit. If you are applying the patch output manually, you will either need to filter the TopGit metadata files (i.e. {{wget -O - <url> | filterdiff -x*.topdeps -x*.topmsg | patch -p1}}), or remove them afterward ({{rm .topmsg .topdeps}})._

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-4122) Bootstrap and decommission with multiple ranges for vnodes

Posted by "Sam Overton (Updated) (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-4122?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Sam Overton updated CASSANDRA-4122:
-----------------------------------

    Description: 
Bootstrap:
* New config parameter num_tokens which is used iff initial_token is not set. 
* Both initial_token and replace_token will allow a comma-separated list of tokens so multiple tokens can be configured explicitly if required.
* Bootstrapper.getBalancedToken will be deprecated and used only in the case that num_tokens == 1. Instead, if initial token is not specified, num_tokens tokens will be randomly chosen.
* The existing logic can be used to calculate the new ranges which must be streamed.

Decommission:
* The existing logic can be used with some minor modifications to account for multiple tokens per host

    
> Bootstrap and decommission with multiple ranges for vnodes
> ----------------------------------------------------------
>
>                 Key: CASSANDRA-4122
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4122
>             Project: Cassandra
>          Issue Type: Sub-task
>          Components: Core
>            Reporter: Sam Overton
>            Assignee: Sam Overton
>
> Bootstrap:
> * New config parameter num_tokens which is used iff initial_token is not set. 
> * Both initial_token and replace_token will allow a comma-separated list of tokens so multiple tokens can be configured explicitly if required.
> * Bootstrapper.getBalancedToken will be deprecated and used only in the case that num_tokens == 1. Instead, if initial token is not specified, num_tokens tokens will be randomly chosen.
> * The existing logic can be used to calculate the new ranges which must be streamed.
> Decommission:
> * The existing logic can be used with some minor modifications to account for multiple tokens per host

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-4122) Bootstrap and decommission with multiple ranges for vnodes

Posted by "Sam Overton (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-4122?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Sam Overton updated CASSANDRA-4122:
-----------------------------------

    Description: 
Bootstrap:
* New config parameter num_tokens which is used iff initial_token is not set. 
* Both initial_token and replace_token will allow a comma-separated list of tokens so multiple tokens can be configured explicitly if required.
* Bootstrapper.getBalancedToken will be deprecated and used only in the case that num_tokens == 1. Instead, if initial token is not specified, num_tokens tokens will be randomly chosen.
* The existing logic can be used to calculate the new ranges which must be streamed.

Decommission:
* The existing logic can be used with some minor modifications to account for multiple tokens per host

_Edit0: appended patch information._
_Edit1: added 03_group_stream_out_ranges patch._

h3. Patches
||Compare||Raw diff||Description||
|[01_bootstrap_decommission|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission]|[01_bootstrap_decommission.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission.diff]|No Description|
|[02_remove_tokens|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens]|[02_remove_tokens.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens.diff]|No Description|
|[03_group_stream_out_ranges|https://github.com/acunu/cassandra/compare/top-bases/p/4122/03_group_stream_out_ranges...p/4122/03_group_stream_out_ranges]|[03_group_stream_out_ranges.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/03_group_stream_out_ranges...p/4122/03_group_stream_out_ranges.diff]|No Description|
----

_Note: These are branches managed with TopGit. If you are applying the patch output manually, you will either need to filter the TopGit metadata files (i.e. {{wget -O - <url> | filterdiff -x*.topdeps -x*.topmsg | patch -p1}}), or remove them afterward ({{rm .topmsg .topdeps}})._


  was:
Bootstrap:
* New config parameter num_tokens which is used iff initial_token is not set. 
* Both initial_token and replace_token will allow a comma-separated list of tokens so multiple tokens can be configured explicitly if required.
* Bootstrapper.getBalancedToken will be deprecated and used only in the case that num_tokens == 1. Instead, if initial token is not specified, num_tokens tokens will be randomly chosen.
* The existing logic can be used to calculate the new ranges which must be streamed.

Decommission:
* The existing logic can be used with some minor modifications to account for multiple tokens per host

_Edit0: appended patch information._

h3. Patches
||Compare||Raw diff||Description||
|[01_bootstrap_decommission|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission]|[01_bootstrap_decommission.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission.diff]|No Description|
|[02_remove_tokens|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens]|[02_remove_tokens.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens.diff]|No Description|

----

_Note: These are branches managed with TopGit. If you are applying the patch output manually, you will either need to filter the TopGit metadata files (i.e. {{wget -O - <url> | filterdiff -x*.topdeps -x*.topmsg | patch -p1}}), or remove them afterward ({{rm .topmsg .topdeps}})._


    
> Bootstrap and decommission with multiple ranges for vnodes
> ----------------------------------------------------------
>
>                 Key: CASSANDRA-4122
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4122
>             Project: Cassandra
>          Issue Type: Sub-task
>          Components: Core
>            Reporter: Sam Overton
>            Assignee: Sam Overton
>
> Bootstrap:
> * New config parameter num_tokens which is used iff initial_token is not set. 
> * Both initial_token and replace_token will allow a comma-separated list of tokens so multiple tokens can be configured explicitly if required.
> * Bootstrapper.getBalancedToken will be deprecated and used only in the case that num_tokens == 1. Instead, if initial token is not specified, num_tokens tokens will be randomly chosen.
> * The existing logic can be used to calculate the new ranges which must be streamed.
> Decommission:
> * The existing logic can be used with some minor modifications to account for multiple tokens per host
> _Edit0: appended patch information._
> _Edit1: added 03_group_stream_out_ranges patch._
> h3. Patches
> ||Compare||Raw diff||Description||
> |[01_bootstrap_decommission|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission]|[01_bootstrap_decommission.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission.diff]|No Description|
> |[02_remove_tokens|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens]|[02_remove_tokens.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens.diff]|No Description|
> |[03_group_stream_out_ranges|https://github.com/acunu/cassandra/compare/top-bases/p/4122/03_group_stream_out_ranges...p/4122/03_group_stream_out_ranges]|[03_group_stream_out_ranges.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/03_group_stream_out_ranges...p/4122/03_group_stream_out_ranges.diff]|No Description|
> ----
> _Note: These are branches managed with TopGit. If you are applying the patch output manually, you will either need to filter the TopGit metadata files (i.e. {{wget -O - <url> | filterdiff -x*.topdeps -x*.topmsg | patch -p1}}), or remove them afterward ({{rm .topmsg .topdeps}})._

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-4122) Bootstrap and decommission with multiple ranges for vnodes

Posted by "Eric Evans (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-4122?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13405282#comment-13405282 ] 

Eric Evans commented on CASSANDRA-4122:
---------------------------------------

This is done in: https://github.com/acunu/cassandra/commit/80d1668, and the patch output reflects this.
                
> Bootstrap and decommission with multiple ranges for vnodes
> ----------------------------------------------------------
>
>                 Key: CASSANDRA-4122
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4122
>             Project: Cassandra
>          Issue Type: Sub-task
>          Components: Core
>            Reporter: Sam Overton
>            Assignee: Sam Overton
>
> Bootstrap:
> * New config parameter num_tokens which is used iff initial_token is not set. 
> * Both initial_token and replace_token will allow a comma-separated list of tokens so multiple tokens can be configured explicitly if required.
> * Bootstrapper.getBalancedToken will be deprecated and used only in the case that num_tokens == 1. Instead, if initial token is not specified, num_tokens tokens will be randomly chosen.
> * The existing logic can be used to calculate the new ranges which must be streamed.
> Decommission:
> * The existing logic can be used with some minor modifications to account for multiple tokens per host
> _Edit0: appended patch information._
> _Edit1: added 03_group_stream_out_ranges patch._
> h3. Patches
> ||Compare||Raw diff||Description||
> |[01_bootstrap_decommission|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission]|[01_bootstrap_decommission.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission.diff]|No Description|
> |[02_remove_tokens|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens]|[02_remove_tokens.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens.diff]|No Description|
> |[03_group_stream_out_ranges|https://github.com/acunu/cassandra/compare/top-bases/p/4122/03_group_stream_out_ranges...p/4122/03_group_stream_out_ranges]|[03_group_stream_out_ranges.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/03_group_stream_out_ranges...p/4122/03_group_stream_out_ranges.diff]|No Description|
> ----
> _Note: These are branches managed with TopGit. If you are applying the patch output manually, you will either need to filter the TopGit metadata files (i.e. {{wget -O - <url> | filterdiff -x*.topdeps -x*.topmsg | patch -p1}}), or remove them afterward ({{rm .topmsg .topdeps}})._

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-4122) Bootstrap and decommission with multiple ranges for vnodes

Posted by "Brandon Williams (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-4122?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402391#comment-13402391 ] 

Brandon Williams commented on CASSANDRA-4122:
---------------------------------------------

Is there any reason to mark the singular counterparts (getInitialToken for exmaple) as deprecated instead of just removing them?
                
> Bootstrap and decommission with multiple ranges for vnodes
> ----------------------------------------------------------
>
>                 Key: CASSANDRA-4122
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4122
>             Project: Cassandra
>          Issue Type: Sub-task
>          Components: Core
>            Reporter: Sam Overton
>            Assignee: Sam Overton
>
> Bootstrap:
> * New config parameter num_tokens which is used iff initial_token is not set. 
> * Both initial_token and replace_token will allow a comma-separated list of tokens so multiple tokens can be configured explicitly if required.
> * Bootstrapper.getBalancedToken will be deprecated and used only in the case that num_tokens == 1. Instead, if initial token is not specified, num_tokens tokens will be randomly chosen.
> * The existing logic can be used to calculate the new ranges which must be streamed.
> Decommission:
> * The existing logic can be used with some minor modifications to account for multiple tokens per host
> _Edit0: appended patch information._
> _Edit1: added 03_group_stream_out_ranges patch._
> h3. Patches
> ||Compare||Raw diff||Description||
> |[01_bootstrap_decommission|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission]|[01_bootstrap_decommission.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission.diff]|No Description|
> |[02_remove_tokens|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens]|[02_remove_tokens.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens.diff]|No Description|
> |[03_group_stream_out_ranges|https://github.com/acunu/cassandra/compare/top-bases/p/4122/03_group_stream_out_ranges...p/4122/03_group_stream_out_ranges]|[03_group_stream_out_ranges.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/03_group_stream_out_ranges...p/4122/03_group_stream_out_ranges.diff]|No Description|
> ----
> _Note: These are branches managed with TopGit. If you are applying the patch output manually, you will either need to filter the TopGit metadata files (i.e. {{wget -O - <url> | filterdiff -x*.topdeps -x*.topmsg | patch -p1}}), or remove them afterward ({{rm .topmsg .topdeps}})._

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-4122) Bootstrap and decommission with multiple ranges for vnodes

Posted by "Brandon Williams (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-4122?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13409940#comment-13409940 ] 

Brandon Williams commented on CASSANDRA-4122:
---------------------------------------------

Looks like we have a problem with replace_token:

{noformat}

 INFO 22:55:10,582 JOINING: Replacing a node with token: [56713727820156410577229101238628035242, 56713727820156410577229101238628035243]
 INFO 22:55:10,585 Enqueuing flush of Memtable-local@439767277(58/58 serialized/live bytes, 1 ops)
 INFO 22:55:10,586 Writing Memtable-local@439767277(58/58 serialized/live bytes, 1 ops)
 INFO 22:55:10,594 Completed flushing /var/lib/cassandra/data/system/local/system-local-ia-2-Data.db (71 bytes) for commitlog position ReplayPosition(segmentId=8783929200875505, position=11113)
 INFO 22:55:10,596 JOINING: Starting to bootstrap...
 INFO 22:55:16,102 Finished streaming session 2 from /10.179.65.102
 INFO 22:55:16,271 Finished streaming session 1 from /10.179.111.137
 INFO 22:55:16,275 Enqueuing flush of Memtable-local@474336791(82/82 serialized/live bytes, 2 ops)
 INFO 22:55:16,276 Writing Memtable-local@474336791(82/82 serialized/live bytes, 2 ops)
 INFO 22:55:16,278 Compacting [SSTableReader(path='/var/lib/cassandra/data/Keyspace1/Standard1/Keyspace1-Standard1-ia-3-Data.db'), SSTableReader(path='/var/lib/cassandra/data/Keyspace1/Standard1/Keyspace1-Standard1-ia-4-Data.db'), SSTableReader(path='/var/lib/cassandra/data/Keyspace1/Standard1/Keyspace1-Standard1-ia-2-Data.db'), SSTableReader(path='/var/lib/cassandra/data/Keyspace1/Standard1/Keyspace1-Standard1-ia-1-Data.db'), SSTableReader(path='/var/lib/cassandra/data/Keyspace1/Standard1/Keyspace1-Standard1-ia-6-Data.db'), SSTableReader(path='/var/lib/cassandra/data/Keyspace1/Standard1/Keyspace1-Standard1-ia-7-Data.db'), SSTableReader(path='/var/lib/cassandra/data/Keyspace1/Standard1/Keyspace1-Standard1-ia-5-Data.db')]
 INFO 22:55:16,286 Completed flushing /var/lib/cassandra/data/system/local/system-local-ia-3-Data.db (95 bytes) for commitlog position ReplayPosition(segmentId=8783929200875505, position=11361)
 INFO 22:55:16,544 Node cassandra-2/10.179.64.227 state jump to normal
ERROR 22:55:16,546 Exception encountered during startup
java.lang.AssertionError
        at org.apache.cassandra.locator.TokenMetadata.removeEndpoint(TokenMetadata.java:353)
        at org.apache.cassandra.service.StorageService.onRemove(StorageService.java:1717)
        at org.apache.cassandra.gms.Gossiper.removeEndpoint(Gossiper.java:272)
        at org.apache.cassandra.gms.Gossiper.replacedEndpoint(Gossiper.java:300)
        at org.apache.cassandra.service.StorageService.joinTokenRing(StorageService.java:684)
        at org.apache.cassandra.service.StorageService.initServer(StorageService.java:476)
        at org.apache.cassandra.service.StorageService.initServer(StorageService.java:367)
        at org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:228)
        at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:318)
        at org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:361)
java.lang.AssertionError
        at org.apache.cassandra.locator.TokenMetadata.removeEndpoint(TokenMetadata.java:353)
        at org.apache.cassandra.service.StorageService.onRemove(StorageService.java:1717)
        at org.apache.cassandra.gms.Gossiper.removeEndpoint(Gossiper.java:272)
        at org.apache.cassandra.gms.Gossiper.replacedEndpoint(Gossiper.java:300)
        at org.apache.cassandra.service.StorageService.joinTokenRing(StorageService.java:684)
        at org.apache.cassandra.service.StorageService.initServer(StorageService.java:476)
        at org.apache.cassandra.service.StorageService.initServer(StorageService.java:367)
        at org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:228)
        at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:318)
        at org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:361)
Exception encountered during startup: null
ERROR 22:55:16,550 Exception in thread Thread[StorageServiceShutdownHook,5,main]
java.lang.NullPointerException
        at org.apache.cassandra.service.StorageService.stopRPCServer(StorageService.java:275)
        at org.apache.cassandra.service.StorageService$1.runMayThrow(StorageService.java:437)
        at org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:26)
        at java.lang.Thread.run(Thread.java:662)
{noformat}
                
> Bootstrap and decommission with multiple ranges for vnodes
> ----------------------------------------------------------
>
>                 Key: CASSANDRA-4122
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4122
>             Project: Cassandra
>          Issue Type: Sub-task
>          Components: Core
>            Reporter: Sam Overton
>            Assignee: Sam Overton
>
> Bootstrap:
> * New config parameter num_tokens which is used iff initial_token is not set. 
> * Both initial_token and replace_token will allow a comma-separated list of tokens so multiple tokens can be configured explicitly if required.
> * Bootstrapper.getBalancedToken will be deprecated and used only in the case that num_tokens == 1. Instead, if initial token is not specified, num_tokens tokens will be randomly chosen.
> * The existing logic can be used to calculate the new ranges which must be streamed.
> Decommission:
> * The existing logic can be used with some minor modifications to account for multiple tokens per host
> _Edit0: appended patch information._
> _Edit1: added 03_group_stream_out_ranges patch._
> h3. Patches
> ||Compare||Raw diff||Description||
> |[01_bootstrap_decommission|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission]|[01_bootstrap_decommission.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission.diff]|No Description|
> |[02_remove_tokens|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens]|[02_remove_tokens.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens.diff]|No Description|
> |[03_group_stream_out_ranges|https://github.com/acunu/cassandra/compare/top-bases/p/4122/03_group_stream_out_ranges...p/4122/03_group_stream_out_ranges]|[03_group_stream_out_ranges.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/03_group_stream_out_ranges...p/4122/03_group_stream_out_ranges.diff]|No Description|
> ----
> _Note: These are branches managed with TopGit. If you are applying the patch output manually, you will either need to filter the TopGit metadata files (i.e. {{wget -O - <url> | filterdiff -x*.topdeps -x*.topmsg | patch -p1}}), or remove them afterward ({{rm .topmsg .topdeps}})._

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-4122) Bootstrap and decommission with multiple ranges for vnodes

Posted by "Brandon Williams (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-4122?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13417289#comment-13417289 ] 

Brandon Williams commented on CASSANDRA-4122:
---------------------------------------------

+1
                
> Bootstrap and decommission with multiple ranges for vnodes
> ----------------------------------------------------------
>
>                 Key: CASSANDRA-4122
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4122
>             Project: Cassandra
>          Issue Type: Sub-task
>          Components: Core
>            Reporter: Sam Overton
>            Assignee: Sam Overton
>
> Bootstrap:
> * New config parameter num_tokens which is used iff initial_token is not set. 
> * Both initial_token and replace_token will allow a comma-separated list of tokens so multiple tokens can be configured explicitly if required.
> * Bootstrapper.getBalancedToken will be deprecated and used only in the case that num_tokens == 1. Instead, if initial token is not specified, num_tokens tokens will be randomly chosen.
> * The existing logic can be used to calculate the new ranges which must be streamed.
> Decommission:
> * The existing logic can be used with some minor modifications to account for multiple tokens per host
> _Edit0: appended patch information._
> _Edit1: added 03_group_stream_out_ranges patch._
> h3. Patches
> ||Compare||Raw diff||Description||
> |[01_bootstrap_decommission|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission]|[01_bootstrap_decommission.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission.diff]|No Description|
> |[02_remove_tokens|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens]|[02_remove_tokens.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens.diff]|No Description|
> |[03_group_stream_out_ranges|https://github.com/acunu/cassandra/compare/top-bases/p/4122/03_group_stream_out_ranges...p/4122/03_group_stream_out_ranges]|[03_group_stream_out_ranges.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/03_group_stream_out_ranges...p/4122/03_group_stream_out_ranges.diff]|No Description|
> ----
> _Note: These are branches managed with TopGit. If you are applying the patch output manually, you will either need to filter the TopGit metadata files (i.e. {{wget -O - <url> | filterdiff -x*.topdeps -x*.topmsg | patch -p1}}), or remove them afterward ({{rm .topmsg .topdeps}})._

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-4122) Bootstrap and decommission with multiple ranges for vnodes

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-4122?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13411625#comment-13411625 ] 

Jonathan Ellis commented on CASSANDRA-4122:
-------------------------------------------

Please make sure to update NEWS with the configuration changes.
                
> Bootstrap and decommission with multiple ranges for vnodes
> ----------------------------------------------------------
>
>                 Key: CASSANDRA-4122
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4122
>             Project: Cassandra
>          Issue Type: Sub-task
>          Components: Core
>            Reporter: Sam Overton
>            Assignee: Sam Overton
>
> Bootstrap:
> * New config parameter num_tokens which is used iff initial_token is not set. 
> * Both initial_token and replace_token will allow a comma-separated list of tokens so multiple tokens can be configured explicitly if required.
> * Bootstrapper.getBalancedToken will be deprecated and used only in the case that num_tokens == 1. Instead, if initial token is not specified, num_tokens tokens will be randomly chosen.
> * The existing logic can be used to calculate the new ranges which must be streamed.
> Decommission:
> * The existing logic can be used with some minor modifications to account for multiple tokens per host
> _Edit0: appended patch information._
> _Edit1: added 03_group_stream_out_ranges patch._
> h3. Patches
> ||Compare||Raw diff||Description||
> |[01_bootstrap_decommission|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission]|[01_bootstrap_decommission.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission.diff]|No Description|
> |[02_remove_tokens|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens]|[02_remove_tokens.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens.diff]|No Description|
> |[03_group_stream_out_ranges|https://github.com/acunu/cassandra/compare/top-bases/p/4122/03_group_stream_out_ranges...p/4122/03_group_stream_out_ranges]|[03_group_stream_out_ranges.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/03_group_stream_out_ranges...p/4122/03_group_stream_out_ranges.diff]|No Description|
> ----
> _Note: These are branches managed with TopGit. If you are applying the patch output manually, you will either need to filter the TopGit metadata files (i.e. {{wget -O - <url> | filterdiff -x*.topdeps -x*.topmsg | patch -p1}}), or remove them afterward ({{rm .topmsg .topdeps}})._

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-4122) Bootstrap and decommission with multiple ranges for vnodes

Posted by "Sam Overton (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-4122?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13407218#comment-13407218 ] 

Sam Overton commented on CASSANDRA-4122:
----------------------------------------

Fixed loading of persisted ring state on startup: https://github.com/acunu/cassandra/commit/12277f0572d509e5e760e6c309101036c4faafb7
                
> Bootstrap and decommission with multiple ranges for vnodes
> ----------------------------------------------------------
>
>                 Key: CASSANDRA-4122
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4122
>             Project: Cassandra
>          Issue Type: Sub-task
>          Components: Core
>            Reporter: Sam Overton
>            Assignee: Sam Overton
>
> Bootstrap:
> * New config parameter num_tokens which is used iff initial_token is not set. 
> * Both initial_token and replace_token will allow a comma-separated list of tokens so multiple tokens can be configured explicitly if required.
> * Bootstrapper.getBalancedToken will be deprecated and used only in the case that num_tokens == 1. Instead, if initial token is not specified, num_tokens tokens will be randomly chosen.
> * The existing logic can be used to calculate the new ranges which must be streamed.
> Decommission:
> * The existing logic can be used with some minor modifications to account for multiple tokens per host
> _Edit0: appended patch information._
> _Edit1: added 03_group_stream_out_ranges patch._
> h3. Patches
> ||Compare||Raw diff||Description||
> |[01_bootstrap_decommission|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission]|[01_bootstrap_decommission.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission.diff]|No Description|
> |[02_remove_tokens|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens]|[02_remove_tokens.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens.diff]|No Description|
> |[03_group_stream_out_ranges|https://github.com/acunu/cassandra/compare/top-bases/p/4122/03_group_stream_out_ranges...p/4122/03_group_stream_out_ranges]|[03_group_stream_out_ranges.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/03_group_stream_out_ranges...p/4122/03_group_stream_out_ranges.diff]|No Description|
> ----
> _Note: These are branches managed with TopGit. If you are applying the patch output manually, you will either need to filter the TopGit metadata files (i.e. {{wget -O - <url> | filterdiff -x*.topdeps -x*.topmsg | patch -p1}}), or remove them afterward ({{rm .topmsg .topdeps}})._

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Resolved] (CASSANDRA-4122) Bootstrap and decommission with multiple ranges for vnodes

Posted by "Eric Evans (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-4122?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Eric Evans resolved CASSANDRA-4122.
-----------------------------------

    Resolution: Fixed

committed to trunk; thanks everyone!
                
> Bootstrap and decommission with multiple ranges for vnodes
> ----------------------------------------------------------
>
>                 Key: CASSANDRA-4122
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4122
>             Project: Cassandra
>          Issue Type: Sub-task
>          Components: Core
>            Reporter: Sam Overton
>            Assignee: Sam Overton
>
> Bootstrap:
> * New config parameter num_tokens which is used iff initial_token is not set. 
> * Both initial_token and replace_token will allow a comma-separated list of tokens so multiple tokens can be configured explicitly if required.
> * Bootstrapper.getBalancedToken will be deprecated and used only in the case that num_tokens == 1. Instead, if initial token is not specified, num_tokens tokens will be randomly chosen.
> * The existing logic can be used to calculate the new ranges which must be streamed.
> Decommission:
> * The existing logic can be used with some minor modifications to account for multiple tokens per host
> _Edit0: appended patch information._
> _Edit1: added 03_group_stream_out_ranges patch._
> h3. Patches
> ||Compare||Raw diff||Description||
> |[01_bootstrap_decommission|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission]|[01_bootstrap_decommission.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission.diff]|No Description|
> |[02_remove_tokens|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens]|[02_remove_tokens.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens.diff]|No Description|
> |[03_group_stream_out_ranges|https://github.com/acunu/cassandra/compare/top-bases/p/4122/03_group_stream_out_ranges...p/4122/03_group_stream_out_ranges]|[03_group_stream_out_ranges.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/03_group_stream_out_ranges...p/4122/03_group_stream_out_ranges.diff]|No Description|
> ----
> _Note: These are branches managed with TopGit. If you are applying the patch output manually, you will either need to filter the TopGit metadata files (i.e. {{wget -O - <url> | filterdiff -x*.topdeps -x*.topmsg | patch -p1}}), or remove them afterward ({{rm .topmsg .topdeps}})._

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-4122) Bootstrap and decommission with multiple ranges for vnodes

Posted by "Brandon Williams (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-4122?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13411195#comment-13411195 ] 

Brandon Williams commented on CASSANDRA-4122:
---------------------------------------------

+1
                
> Bootstrap and decommission with multiple ranges for vnodes
> ----------------------------------------------------------
>
>                 Key: CASSANDRA-4122
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4122
>             Project: Cassandra
>          Issue Type: Sub-task
>          Components: Core
>            Reporter: Sam Overton
>            Assignee: Sam Overton
>
> Bootstrap:
> * New config parameter num_tokens which is used iff initial_token is not set. 
> * Both initial_token and replace_token will allow a comma-separated list of tokens so multiple tokens can be configured explicitly if required.
> * Bootstrapper.getBalancedToken will be deprecated and used only in the case that num_tokens == 1. Instead, if initial token is not specified, num_tokens tokens will be randomly chosen.
> * The existing logic can be used to calculate the new ranges which must be streamed.
> Decommission:
> * The existing logic can be used with some minor modifications to account for multiple tokens per host
> _Edit0: appended patch information._
> _Edit1: added 03_group_stream_out_ranges patch._
> h3. Patches
> ||Compare||Raw diff||Description||
> |[01_bootstrap_decommission|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission]|[01_bootstrap_decommission.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/01_bootstrap_decommission...p/4122/01_bootstrap_decommission.diff]|No Description|
> |[02_remove_tokens|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens]|[02_remove_tokens.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/02_remove_tokens...p/4122/02_remove_tokens.diff]|No Description|
> |[03_group_stream_out_ranges|https://github.com/acunu/cassandra/compare/top-bases/p/4122/03_group_stream_out_ranges...p/4122/03_group_stream_out_ranges]|[03_group_stream_out_ranges.patch|https://github.com/acunu/cassandra/compare/top-bases/p/4122/03_group_stream_out_ranges...p/4122/03_group_stream_out_ranges.diff]|No Description|
> ----
> _Note: These are branches managed with TopGit. If you are applying the patch output manually, you will either need to filter the TopGit metadata files (i.e. {{wget -O - <url> | filterdiff -x*.topdeps -x*.topmsg | patch -p1}}), or remove them afterward ({{rm .topmsg .topdeps}})._

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira