You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Adam Masters (JIRA)" <ji...@apache.org> on 2013/08/15 17:25:49 UTC

[jira] [Created] (CASSANDRA-5892) CqlConfigHelper.setInputWhereClauses() doesnt handle GT (>) comparators

Adam Masters created CASSANDRA-5892:
---------------------------------------

             Summary: CqlConfigHelper.setInputWhereClauses() doesnt handle GT (>) comparators
                 Key: CASSANDRA-5892
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-5892
             Project: Cassandra
          Issue Type: Bug
          Components: Hadoop
            Reporter: Adam Masters
            Priority: Minor
             Fix For: 1.2.8


When using CqlPagingRecordReader, specifying a custom where clause using CqlConfigHelper.setInputWhereClauses() throws an exception when a GT (>) comparator is used.

Exception:
java.lang.RuntimeException at org.apache.cassandra.hadoop.cql3.CqlPagingRecordReader$RowIterator.executeQuery(CqlPagingRecordReader.java:646) Caused by: InvalidRequestException(why:Invalid restrictions found on ts) at org.apache.cassandra.thrift.Cassandra$prepare_cql3_query_result.read(Cassandra.java:39567)

This is due to the paging mechanism inserting a GT comparator on the same composite key as the custom where clause, resulting in an invalid CQL statement. For example ("ts > '634926385000000000'" being the custom where clause):

SELECT * FROM "test_cf"
    WHERE token("key") = token(?)  AND "ts" > ?
    AND ts > '634926385000000000' LIMIT 3 ALLOW FILTERING

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira