cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sylvain Lebresne (JIRA)" <>
Subject [jira] Commented: (CASSANDRA-2231) Add CompositeType comparer to the comparers provided in org.apache.cassandra.db.marshal
Date Wed, 02 Mar 2011 21:27:36 GMT


Sylvain Lebresne commented on CASSANDRA-2231:

bq. I would think to add a proper composite type we would need to change the thrift api. so
a row key becomes an array rather than a binary. Otherwise the onus is on the clients to adhere
to the composite internal encoding rules (across all languages)

Actually we still kind of impose some encoding rule with our comparators (IntegerType assumes
little-endian encoding). But I agree that those should be as straightforward as could be.
That's why I've tried to keep the encoding as simple as possible. It's 
<length of part1><part1><length of part2><part2>....
I don't think this get much more simple and I think this is a ok burden on the client.

> Add CompositeType comparer to the comparers provided in org.apache.cassandra.db.marshal
> ---------------------------------------------------------------------------------------
>                 Key: CASSANDRA-2231
>                 URL:
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Contrib
>    Affects Versions: 0.7.3
>            Reporter: Ed Anuff
>            Priority: Minor
>         Attachments: 0001-Add-compositeType.patch,
> CompositeType is a custom comparer that makes it possible to create comparable composite
values out of the basic types that Cassandra currently supports, such as Long, UUID, etc.
 This is very useful in both the creation of custom inverted indexes using columns in a skinny
row, where each column name is a composite value, and also when using Cassandra's built-in
secondary index support, where it can be used to encode the values in the columns that Cassandra
indexes.  One scenario for the usage of these is documented here:
 Source for contribution is attached and has been previously maintained on github here:

This message is automatically generated by JIRA.
For more information on JIRA, see:


View raw message