You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Benedict (JIRA)" <ji...@apache.org> on 2014/04/25 00:43:15 UTC

[jira] [Created] (CASSANDRA-7089) Some problems with typed ByteBuffer comparisons?

Benedict created CASSANDRA-7089:
-----------------------------------

             Summary: Some problems with typed ByteBuffer comparisons?
                 Key: CASSANDRA-7089
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-7089
             Project: Cassandra
          Issue Type: Bug
          Components: Core
            Reporter: Benedict
            Assignee: Sylvain Lebresne
            Priority: Minor
             Fix For: 2.1 beta2


ColumnIdentifier.compareTo() appears subtly broken: it looks to me that we should be using ByteBufferUtil.compareUnsigned() instead of bytes.compareTo(), since they are meant to be UTF8Type. I think it would be nice to drop this compareTo method entirely, as it's only used by CFMetaData.regularColumnComparator and it seems possible to misuse accidentally at a later date since it only works for CQL columns, but a ColumnIdentifier is used for thrift columns as well.

There's a related problem with CellName.isPrefixOf, where we are using equals() instead of type.compareTo() == 0, which could break anyone misusing our old friend Boolean as a clustering column.



--
This message was sent by Atlassian JIRA
(v6.2#6252)