[ https://issues.apache.org/jira/browse/CASSANDRA-10271?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14903426#comment-14903426 ]
Benjamin Lerer commented on CASSANDRA-10271: -------------------------------------------- I had a look at the patches. * The patches check if the previous clustering columns are restricted. It should also check that the restriction is an equals one or an IN restriction with only one value. * Could you add some unit tests to check the behavior of the patch and add an entry to the {{NEWS.txt}} ? As a nit: you should use the {{subList}} method instead of creating it using a loop. > ORDER BY should allow skipping equality-restricted clustering columns > --------------------------------------------------------------------- > > Key: CASSANDRA-10271 > URL: https://issues.apache.org/jira/browse/CASSANDRA-10271 > Project: Cassandra > Issue Type: Bug > Components: API, Core > Reporter: Tyler Hobbs > Assignee: Brett Snyder > Priority: Minor > Fix For: 3.x, 2.2.x > > Attachments: cassandra-2.2-10271.txt, cassandra-3.0-10271.txt > > > Given a table like the following: > {noformat} > CREATE TABLE foo (a int, b int, c int, d int, PRIMARY KEY (a, b, c)); > {noformat} > We should support a query like this: > {noformat} > SELECT * FROM foo WHERE a = 0 AND b = 0 ORDER BY c ASC; > {noformat} > Currently, this results in the following error: > {noformat} > [Invalid query] message="Order by currently only support the ordering of > columns following their declared order in the PRIMARY KEY" > {noformat} > However, since {{b}} is restricted by an equality restriction, we shouldn't > require it to be present in the {{ORDER BY}} clause. > As a workaround, you can use this query instead: > {noformat} > SELECT * FROM foo WHERE a = 0 AND b = 0 ORDER BY b ASC, c ASC; > {noformat} -- This message was sent by Atlassian JIRA (v6.3.4#6332)