[ https://issues.apache.org/jira/browse/CASSANDRA-5836?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16383742#comment-16383742 ]
Oleksandr Shulgin commented on CASSANDRA-5836: ---------------------------------------------- I think "seed nodes can't bootstrap" is only true for the very first node deployed in a cluster (which must be a seed node). Any further nodes deployed into a new cluster *can* bootstrap, but they *don't need* to, since there is no data. For all practical purposes, when deploying a new cluster there is no difference if you specify {{auto_bootstrap=false}} or leave the default. We could also say, that bootstrapping of the very first node in the cluster is no-op. Another case when you add seed nodes is when adding a new DC. In this case they are *not* the first ones to start so they could bootstrap, but most of the time this is not what you want, so you set {{auto_bootstrap=false}} for every node in the new DC, including the new seeds. Finally, if a seed node is restarted because of maintenance it would help if it behaved the same way as normal nodes. It shouldn't be OK that it runs w/o data (due to misconfiguration, for example) and starts to accept read requests again. I would argue that maintenance safety is much more important than ease of initial deployment. So if we need to make a trade-offs we should favor increased safety in the long run. I think the safest option is to just allow seed nodes to bootstrap, when there is are nodes to bootstrap from. So the *only* special case is the very first seed node. At the same time there is no trade-off to be made really: such a change is backwards-compatible. Users will not notice the difference (though it should be documented of course), because as explained above the specific setting of {{auto_bootstrap}} is: 1) irrelevant when deploying a new cluster; and 2) supposed to be explicitly set to {{false}} when deploying a new DC; or 3) has be set to {{true}}, when adding a new node to existing DC. This will allow to bootstrap new nodes directly as seeds as a side-effect. Did I miss something? > Seed nodes should be able to bootstrap without manual intervention > ------------------------------------------------------------------ > > Key: CASSANDRA-5836 > URL: https://issues.apache.org/jira/browse/CASSANDRA-5836 > Project: Cassandra > Issue Type: Bug > Reporter: Bill Hathaway > Priority: Minor > > The current logic doesn't allow a seed node to be bootstrapped. If a user > wants to bootstrap a node configured as a seed (for example to replace a seed > node via replace_token), they first need to remove the node's own IP from the > seed list, and then start the bootstrap process. This seems like an > unnecessary step since a node never uses itself as a seed. > I think it would be a better experience if the logic was changed to allow a > seed node to bootstrap without manual intervention when there are other seed > nodes up in a ring. -- This message was sent by Atlassian JIRA (v7.6.3#76005) --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org