Tyler Hobbs created CASSANDRA-8178: -------------------------------------- Summary: Column names are not converted correctly for non-text comparators Key: CASSANDRA-8178 URL: https://issues.apache.org/jira/browse/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: {noformat} [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}]; {noformat} When you attempt to query that column through cqlsh, you'll get an error like this: {noformat} cqlsh:ks1> select "0008" FROM entity_data ; Bad Request: Undefined name 0008 in selection clause {noformat} 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 (v6.3.4#6332)