You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Alex Petrov (JIRA)" <ji...@apache.org> on 2016/11/21 19:12:59 UTC

[jira] [Updated] (CASSANDRA-12654) Query Validation Error : CQL IN operator over last partitioning|clustering column (valid) is rejected if a query fetches collection columns

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

Alex Petrov updated CASSANDRA-12654:
------------------------------------
    Fix Version/s: 4.x
                   3.0.x
           Status: Patch Available  (was: Open)

The limitation was imposed by the fact that in pre-[CASSANDRA-8099] storage collections were implemented by using {{ColumnToCollectionType}} and composites, which means that the very last part of the composite was collection key identifier. After 8099, each row has it's own clustering key and collection elements are now cells that have path element, so this limitation is now gone.

Note on the patch: {{selectsComplexColumn}} is now removed from the {{StatementRestrictions}} public API. Alternatively, we could deprecate this constructor now and remove later.

|[3.0|https://github.com/ifesdjeen/cassandra/tree/12654-3.0]|[utest|https://cassci.datastax.com/view/Dev/view/ifesdjeen/job/ifesdjeen-12654-3.0-testall/]|[dtest|https://cassci.datastax.com/view/Dev/view/ifesdjeen/job/ifesdjeen-12654-3.0-dtest/]|
|[3.X|https://github.com/ifesdjeen/cassandra/tree/12654-3.X]|[utest|https://cassci.datastax.com/view/Dev/view/ifesdjeen/job/ifesdjeen-12654-3.X-testall/]|[dtest|https://cassci.datastax.com/view/Dev/view/ifesdjeen/job/ifesdjeen-12654-3.X-dtest/]|
|[trunk|https://github.com/ifesdjeen/cassandra/tree/12654-trunk]|[utest|https://cassci.datastax.com/view/Dev/view/ifesdjeen/job/ifesdjeen-12654-trunk-testall/]|[dtest|https://cassci.datastax.com/view/Dev/view/ifesdjeen/job/ifesdjeen-12654-trunk-dtest/]|


> Query Validation Error : CQL IN operator over last partitioning|clustering column (valid) is rejected if a query fetches collection columns
> -------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-12654
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-12654
>             Project: Cassandra
>          Issue Type: Bug
>          Components: CQL
>            Reporter: Samba Siva Rao Kolusu
>            Assignee: Alex Petrov
>            Priority: Minor
>              Labels: easyfix
>             Fix For: 3.0.x, 3.x, 4.x
>
>
> although IN operator is allowed over the last clustering or partitioning columns, the CQL Query Validator is rejecting queries when they attempt to fetch collection columns in their result set.
> It seems a similar bug (CASSANDRA-5376) was raised some time ago, and a fix (rather mask) was provided to give a better error message to such queries in 1.2.4. 
> Considering that Cassandra & CQL has evolved a great deal from that period, it now seems possible to provide an actual fix to this problem, i.e. allowing queries to fetch collection columns even when IN operator is used.
> please read the following mail thread to understand the context : 
> https://lists.apache.org/thread.html/8e1765d14bd9798bf9c0938a793f1dbc9c9349062a8705db2e28d291@%3Cuser.cassandra.apache.org%3E



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