[ 
https://issues.apache.org/jira/browse/CASSANDRA-8147?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14180223#comment-14180223
 ] 

Tyler Hobbs commented on CASSANDRA-8147:
----------------------------------------

Hmm, so this makes some of the same fixes as CASSANDRA-8155, but in a different 
way.  Personally, I prefer putting the logic for "does this index support this 
operator" in the index code instead of the operator code (as the 8155 patch 
does).  However, it would be good to include your test cases and the constants 
instead of String options.

Do you want to take a look at that patch and see if you agree?

> Secondary indexing of map keys does not work properly when mixing contains 
> and contains_key
> -------------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-8147
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-8147
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Benjamin Lerer
>            Assignee: Benjamin Lerer
>            Priority: Minor
>         Attachments: CASSANDRA-8147.txt
>
>
> If you have a table with a map column and an index on the map key selecting 
> data using a contains key and a contains will not return the expected data.
> The problem can be reproduced using the following unit test:
> {code}
>     @Test
>     public void testMapKeyContainsAndValueContains() throws Throwable
>     {
>         createTable("CREATE TABLE %s (account text, id int, categories 
> map<text,text>, PRIMARY KEY (account, id))");
>         createIndex("CREATE INDEX ON %s(keys(categories))");
>         execute("INSERT INTO %s (account, id , categories) VALUES (?, ?, ?)", 
> "test", 5, map("lmn", "foo"));
>         assertRows(execute("SELECT * FROM %s WHERE account = ? AND id = ? AND 
> categories CONTAINS KEY ? AND categories CONTAINS ? ALLOW FILTERING", "test", 
> 5, "lmn", "foo"), row("test", 5, map("lmn", "foo")));  
>     }
> {code}



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

Reply via email to