[
https://issues.apache.org/jira/browse/CASSANDRA-385?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12762810#action_12762810
]
Eric Evans commented on CASSANDRA-385:
--------------------------------------
This looks good to me, but I do have one question/concern.
Introduced in 0006-get-token-on-bootstrap-that-gives-us-half-of-the-keys.txt,
when a node bootstraps and hasn't been assigned a token, it selects one via
StorageService.getBootstrapTokenFrom which uses Thrift to retrieve it as a
property.
My concern is that this is the first time we've used Thrift for anything that
wasn't client oriented. Do we want to start now, or does it make sense to
preserve that separation?
If nothing else, sticking with this approach will mean that work is needed to
improve how the Thrift service is bound to interfaces, (currently configured
via ThriftAddress), because there is only one option that is guaranteed safe
with this patch applied (0.0.0.0).
> intellibootstrap
> ----------------
>
> Key: CASSANDRA-385
> URL: https://issues.apache.org/jira/browse/CASSANDRA-385
> Project: Cassandra
> Issue Type: Bug
> Components: Core
> Reporter: Jonathan Ellis
> Assignee: Jonathan Ellis
> Fix For: 0.5
>
> Attachments: 0001-CASSANDRA-385-clean-up-loadinfo-and-SLB.txt,
> 0002-make-LoadInfo-a-double-instead-of-going-from-long-s.txt,
> 0003-move-javadoc-into-mbean.-inline-methods-where-wrappin.txt,
> 0004-use-Strings-instead-of-Endpoints-in-jmx-methods.-merge.txt,
> 0005-add-getLoadMap-jmx-method-add-load-info-to-nodeprobe.txt,
> 0006-get-token-on-bootstrap-that-gives-us-half-of-the-keys.txt
>
>
> ideally bootstrap mode should determine its new position on the ring by
> examining the Load of the existing nodes in the cluster. (currently Load is
> just disk space used but making this pluggable is another ticket.) having
> found the highest-load-node-that-is-not-participating-in-bootstrap, it should
> ask that node for a Token which would move half the keys over to the new node.
> This is easily computed since we have a periodic sampling of keys in memory
> of all the keys on disk, and even SSTable.getIndexedKeys that merges all such
> keys. So pick the midpoint, and turn it into a token (these are decorated
> keys so that is always possible).
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.