cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sylvain Lebresne (JIRA)" <j...@apache.org>
Subject [jira] [Created] (CASSANDRA-7281) SELECT on tuple relations are broken for mixed ASC/DESC clustering order
Date Wed, 21 May 2014 17:22:38 GMT
Sylvain Lebresne created CASSANDRA-7281:
-------------------------------------------

             Summary: SELECT on tuple relations are broken for mixed ASC/DESC clustering order
                 Key: CASSANDRA-7281
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-7281
             Project: Cassandra
          Issue Type: Bug
            Reporter: Sylvain Lebresne
             Fix For: 2.0.9


As noted on [CASSANDRA-6875|https://issues.apache.org/jira/browse/CASSANDRA-6875?focusedCommentId=13992153&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13992153],
the tuple notation is broken when the clustering order mixes ASC and DESC directives because
the range of data they describe don't correspond to a single continuous slice internally.
To copy the example from CASSANDRA-6875:
{noformat}
cqlsh:ks> create table foo (a int, b int, c int, PRIMARY KEY (a, b, c)) WITH CLUSTERING
ORDER BY (b DESC, c ASC);
cqlsh:ks> INSERT INTO foo (a, b, c) VALUES (0, 2, 0);
cqlsh:ks> INSERT INTO foo (a, b, c) VALUES (0, 1, 0);
cqlsh:ks> INSERT INTO foo (a, b, c) VALUES (0, 1, 1);
cqlsh:ks> INSERT INTO foo (a, b, c) VALUES (0, 0, 0);
cqlsh:ks> SELECT * FROM foo WHERE a=0;

 a | b | c
---+---+---
 0 | 2 | 0
 0 | 1 | 0
 0 | 1 | 1
 0 | 0 | 0

(4 rows)

cqlsh:ks> SELECT * FROM foo WHERE a=0 AND (b, c) > (1, 0);

 a | b | c
---+---+---
 0 | 2 | 0

(1 rows)
{noformat}
The last query should really return {{(0, 2, 0)}} and {{(0, 1, 1)}}.

For that specific example we should generate 2 internal slices, but I believe that with more
clustering columns we may have more slices.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Mime
View raw message