[ https://issues.apache.org/jira/browse/CASSANDRA-7411?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14034427#comment-14034427 ]
Brandon Williams commented on CASSANDRA-7411: --------------------------------------------- This is because once the initial_token is set in the system table, it's unused from the yaml afterward. Upon rebooted the num_tokens takes precedence, as that would be the procedure to begin upgrading to vnodes. You really shouldn't ever set both of these, especially with a single initial_token. > Node enables vnodes when bounced > -------------------------------- > > Key: CASSANDRA-7411 > URL: https://issues.apache.org/jira/browse/CASSANDRA-7411 > Project: Cassandra > Issue Type: Bug > Environment: OSX 9 > Reporter: Philip Thompson > Attachments: system.log > > > According to cassandra.yaml, in the information for the num_tokens setting, > "Specifying initial_token will override this setting." So if exactly one > initial token is set, then vnodes are disabled, regardless of if or what > num_tokens are set to. This behavior is inconsistent when a node is started, > versus if it has been bounced. > From a fresh checkout of C*, if I build, then edit cassandra.yaml so that: > num_tokens: 256 > initial_token: -9223372036854775808 > then run bin/cassandra, C* will start correctly. I can run bin/nodetool ring > and see that the node has exactly one token and it is what I set in > initial_token. If I gracefully shutdown C*, then restart the node, running > bin/nodetool ring shows that the node now has vnodes enabled and has 256 > tokens. > I have been able to reproduce this locally on OSX using 2.0.8, 2.1 rc1, and > trunk. I have not yet tested in Linux or Windows to see if it occurs there. -- This message was sent by Atlassian JIRA (v6.2#6252)