You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Jeremiah Jordan (JIRA)" <ji...@apache.org> on 2013/05/07 23:03:16 UTC
[jira] [Updated] (CASSANDRA-5406) Allow CQL3 queries to do extra
filter after getting the column slice on a composite primary key
[ https://issues.apache.org/jira/browse/CASSANDRA-5406?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jeremiah Jordan updated CASSANDRA-5406:
---------------------------------------
Assignee: (was: Jeremiah Jordan)
> Allow CQL3 queries to do extra filter after getting the column slice on a composite primary key
> -----------------------------------------------------------------------------------------------
>
> Key: CASSANDRA-5406
> URL: https://issues.apache.org/jira/browse/CASSANDRA-5406
> Project: Cassandra
> Issue Type: Improvement
> Reporter: Jeremiah Jordan
> Priority: Minor
>
> Let the following work:
> {noformat}
> CREATE TABLE "ChequeDeDup2" (
> "bucketId" int,
> "transitAba" int,
> "transitAccount" bigint,
> "serialNo" int,
> amount bigint,
> "subjectId" uuid,
> "channelInd" ascii,
> "creditAba" int,
> "creditAccount" bigint,
> "sourceTs" timestamp,
> PRIMARY KEY ("bucketId", "transitAba", "transitAccount", "serialNo", amount, "subjectId")
> )
> select * from "ChequeDeDup2" where "bucketId" = 198 and "transitAba" >= 101 and "transitAccount" = 198 and "serialNo" = 1 and "amount" = -1 order by "transitAba" desc , "transitAccount" desc, "serialNo" desc, amount desc, "subjectId" DESC limit 5;
> Bad Request: PRIMARY KEY part transitAccount cannot be restricted (preceding part transitAba is either not restricted or by a non-EQ relation)
> {noformat}
> The assumption seems to be that it is better to serialize all the data with transitAba >= 198 back to the client side. But it is *less* efficient for the server to serialize all this data back to the client than it is to execute subsequent filters.
> The user should be allowed to trade off the CPU cost of filtering the data on the server side with the IO cost of serializing all that data.
--
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