[
https://issues.apache.org/jira/browse/CASSANDRA-8147?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14192560#comment-14192560
]
Tyler Hobbs commented on CASSANDRA-8147:
----------------------------------------
bq. Relation.Type and IndexExpression.Operator are really similar. Should we
merge them?
I think that's a good idea, if you're willing to do it (perhaps as a second
patch, for clarity).
bq. in which package do you think that we should put the resulting class?
I'm tempted to just use Relation.Type, but if you think that's a bad idea for
some reason, I would make an o.a.c.cql3.Operator class.
> 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
> Fix For: 2.1.2
>
> Attachments: CASSANDRA-8147-V2.txt, 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)