[
https://issues.apache.org/jira/browse/CASSANDRA-9970?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14692760#comment-14692760
]
Stefania commented on CASSANDRA-9970:
-------------------------------------
Patch is +1, great job!
Let's rerun the 2.2 dtests to shake off some flaky tests and let's apply the
patch to 3.0 as well and check the CI results there too before committing.
> CQL 3.3 ordering in where clause produces different results when using
> "IN...ORDER BY"
> --------------------------------------------------------------------------------------
>
> Key: CASSANDRA-9970
> URL: https://issues.apache.org/jira/browse/CASSANDRA-9970
> Project: Cassandra
> Issue Type: Bug
> Components: API
> Reporter: Marc Zbyszynski
> Assignee: Benjamin Lerer
> Priority: Minor
> Fix For: 2.2.x
>
> Attachments: 9970.txt, dtest-CASSANDRA-9970.txt
>
>
> This is an issue I found with
> {code}
> [cqlsh 5.0.1 | Cassandra 2.2.0 | CQL spec 3.3.0 | Native protocol v4]
> {code}
> Given this table and data:
> {code:sql}
> cqlsh> CREATE TABLE myschema.in_test (
> ... col_1 int,
> ... col_2 int,
> ... col_3 int,
> ... PRIMARY KEY ((col_1, col_2), col_3)
> ... );
> cqlsh> INSERT INTO myschema.in_test (col_1, col_2, col_3) VALUES(1, 1, 1);
> cqlsh> INSERT INTO myschema.in_test (col_1, col_2, col_3) VALUES(1, 1, 2);
> cqlsh> INSERT INTO myschema.in_test (col_1, col_2, col_3) VALUES(1, 1, 13);
> cqlsh> INSERT INTO myschema.in_test (col_1, col_2, col_3) VALUES(1, 2, 10);
> cqlsh> INSERT INTO myschema.in_test (col_1, col_2, col_3) VALUES(1, 2, 11);
> {code}
> This query behaves as expected (as described in
> [http://docs.datastax.com/en/cql/3.3/cql/cql_using/useQueryIN.html])
> {code:sql}
> cqlsh> select * from myschema.in_test where col_1=1 and col_2 IN (1,2) order
> by col_3 desc;
> InvalidRequest: code=2200 [Invalid query] message="Cannot page queries with
> both ORDER BY and a IN restriction on the partition key; you must either
> remove the ORDER BY or the IN and sort client side, or disable paging for
> this query"
> {code}
> But if you swap the order of the statements in the where clause, the query
> executes without error and doesn't totally honor the _order by_ clause:
> {code:sql}
> cqlsh> select * from myschema.in_test where col_2 IN (1,2) and col_1=1 order
> by col_3 desc;
> col_1 | col_2 | col_3
> -------+-------+-------
> 1 | 2 | 11
> 1 | 2 | 10
> 1 | 1 | 13
> 1 | 1 | 2
> 1 | 1 | 1
> (5 rows)
> {code}
> Apologies in advance if this is working as intended, or I'm duplicating an
> existing issue. Also please let me know if you need any additional info.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)