You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Stu Hood (JIRA)" <ji...@apache.org> on 2009/08/20 01:10:16 UTC

[jira] Updated: (CASSANDRA-242) Implement method to "evenly" split a Range

     [ https://issues.apache.org/jira/browse/CASSANDRA-242?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Stu Hood updated CASSANDRA-242:
-------------------------------

    Attachment: CASSANDRA-242.diff

Alright, here is a new version of the patch that removes the layer of indirection that was in the previous patch.

CollatingOrderPreservingPartitioner now uses a BytesToken to explicitly indicate that the token isn't supposed to be human readable.

Thoughts? I think we need to get this merged before 0.4 goes out, since it makes a fundamental change to COPP.

> Implement method to "evenly" split a Range
> ------------------------------------------
>
>                 Key: CASSANDRA-242
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-242
>             Project: Cassandra
>          Issue Type: New Feature
>          Components: Core
>    Affects Versions: 0.4
>            Reporter: Stu Hood
>            Assignee: Stu Hood
>             Fix For: 0.4
>
>         Attachments: CASSANDRA-242.diff, CASSANDRA-242.diff
>
>
> Two tickets currently depend on being able to deterministically split a Range object into two "even" Ranges.
> This can be accomplished with RandomPartitioner/BigIntegerToken by taking the average of the tokens, but the OrderPreservingPartitioner/StringToken implementation uses a Java Collator to define the sort order of Tokens, which means that they are not necessarily sorted in byte/char order.
> Collator.getCollationKey(String).toByteArray() gets you a sortable byte array, but there is no publicly accessible API for converting a similar byte array back into a String.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.