cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Tyler Hobbs (JIRA)" <>
Subject [jira] [Created] (CASSANDRA-8178) Column names are not converted correctly for non-text comparators
Date Thu, 23 Oct 2014 20:04:34 GMT
Tyler Hobbs created CASSANDRA-8178:

             Summary: Column names are not converted correctly for non-text comparators
                 Key: CASSANDRA-8178
             Project: Cassandra
          Issue Type: Bug
          Components: Core
            Reporter: Tyler Hobbs
            Assignee: Tyler Hobbs
             Fix For: 2.0.12, 2.1.2

If a column family is created with a non-text comparator through Thrift (or cassandra-cli)
and column metadata is defined, those column names cannot be queried through cql3.

For example:
[default@ks1] create column family entity_data
...   with column_type = 'Standard'
...   and comparator = 'BytesType'
...   and default_validation_class = 'BytesType'
...   and key_validation_class = 'UTF8Type'
...   and column_metadata = [
...     {column_name : '0008',
...     validation_class : UTF8Type,
...     index_name : 'entity_data_0008_idx',
...     index_type : 0}];

When you attempt to query that column through cqlsh, you'll get an error like this:

cqlsh:ks1> select "0008" FROM entity_data ;
Bad Request: Undefined name 0008 in selection clause

The problem is that we aren't taking the comparator type into account when converting column
names in cql3 statements to their internal (ByteBuffer) representation.

This message was sent by Atlassian JIRA

View raw message