You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Benjamin Lerer (JIRA)" <ji...@apache.org> on 2016/07/04 12:50:10 UTC

[jira] [Updated] (CASSANDRA-11907) 2i behaviour is different in different versions

     [ https://issues.apache.org/jira/browse/CASSANDRA-11907?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Benjamin Lerer updated CASSANDRA-11907:
---------------------------------------
       Resolution: Fixed
    Reproduced In: 3.0.6, 2.1.14, 2.2.7  (was: 2.1.14, 2.2.7, 3.0.6)
           Status: Resolved  (was: Patch Available)

Committed into 2.1 at c857919b40b9fb27139424944e9fb6cc58befc48 and merged into 2.2, 3.0, 3.9 and trunk

> 2i behaviour is different in different versions
> -----------------------------------------------
>
>                 Key: CASSANDRA-11907
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-11907
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Tommy Stendahl
>            Assignee: Alex Petrov
>
>  I think I have found more cases where 2i behave different in different Cassandra versions, CASSANDRA-11510 solved one such case but I think there are a few more.
> I get one behaviour with 2.1.14 and Trunk and I think this is the correct one. With 2.2.7 and 3.0.6 the behaviour is different.
> To test this I used ccm to setup one node clusters with the different versions, I prepared each cluster with these commands:
> {code:sql}
> CREATE KEYSPACE test WITH replication = {'class': 'NetworkTopologyStrategy', 'datacenter1': '1' };
> CREATE TABLE test.table1 (name text,class int,inter text,foo text,power int,PRIMARY KEY (name, class, inter, foo)) WITH CLUSTERING ORDER BY (class DESC, inter ASC);
> CREATE INDEX table1_power ON test.table1 (power) ;
> CREATE TABLE test.table2 (name text,class int,inter text,foo text,power int,PRIMARY KEY (name, class, inter, foo)) WITH CLUSTERING ORDER BY (class DESC, inter ASC);
> CREATE INDEX table2_inter ON test.table2 (inter) ;
> {code}
> I executed two select quieries on each cluster:
> {code:sql}
> SELECT * FROM test.table1 where name='R1' AND class>0 AND class<4 AND inter='int1' AND power=18 ALLOW FILTERING;
> SELECT * FROM test.table2 where name='R1' AND class>0 AND class<4 AND inter='int1' AND foo='aa' ALLOW FILTERING;
> {code}
> On 2.1.14 and Trunk they where successful. But on 2.2.7 and 3.0.6 they failed, the first one with {{InvalidRequest: code=2200 [Invalid query] message="Clustering column "inter" cannot be restricted (preceding column "class" is restricted by a non-EQ relation)"}} and the second one with {{InvalidRequest: code=2200 [Invalid query] message="Clustering column "foo" cannot be restricted (preceding column "inter" is restricted by a non-EQ relation)"}}.
> I could get the queries to execute successfully on 2.2.7 and 3.0.6 by creating two more 2i:
> {code:sql}
> CREATE INDEX table1_inter ON test.table1 (inter) ;
> CREATE INDEX table2_foo ON test.table2 (foo) ;
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)