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

Benjamin Lerer updated CASSANDRA-6075:
--------------------------------------
    Attachment: CASSANDRA-6075.txt

The patch add a test at the end of 
SelectStatement.processPartitionKeyRestrictions (once we are sure that no 
argument is missing) to check that the token function arguments have been 
specify in the good order.

> The token function should allow column identifiers in the correct order only
> ----------------------------------------------------------------------------
>
>                 Key: CASSANDRA-6075
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-6075
>             Project: Cassandra
>          Issue Type: Bug
>         Environment: Cassandra 1.2.9
>            Reporter: Michaël Figuière
>            Assignee: Benjamin Lerer
>            Priority: Minor
>             Fix For: 2.0.11
>
>         Attachments: CASSANDRA-6075.txt
>
>
> Given the following table:
> {code}
> CREATE TABLE t1 (a int, b text, PRIMARY KEY ((a, b)));
> {code}
> The following request returns an error in cqlsh as literal arguments order is 
> incorrect:
> {code}
> SELECT * FROM t1 WHERE token(a, b) > token('s', 1);
> Bad Request: Type error: 's' cannot be passed as argument 0 of function token 
> of type int
> {code}
> But surprisingly if we provide the column identifier arguments in the wrong 
> order no error is returned:
> {code}
> SELECT * FROM t1 WHERE token(a, b) > token(1, 'a'); // correct order is valid
> SELECT * FROM t1 WHERE token(b, a) > token(1, 'a'); // incorrect order is 
> valid as well
> {code}



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

Reply via email to