You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Tyler Hobbs (JIRA)" <ji...@apache.org> on 2014/04/02 18:53:21 UTC
[jira] [Commented] (CASSANDRA-6914) Map element is not allowed in
CAS condition with DELETE/UPDATE query
[ https://issues.apache.org/jira/browse/CASSANDRA-6914?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13957880#comment-13957880 ]
Tyler Hobbs commented on CASSANDRA-6914:
----------------------------------------
Overall it looks good.
In ColumnCondition.equalsTo(), this check is wrong:
{code}
else if (other.collectionElement == null || !other.collectionElement.bindAndGet(variables).equals(other.collectionElement.bindAndGet(variables)))
{code}
it should be:
{code}
else if (other.collectionElement == null || !collectionElement.bindAndGet(variables).equals(other.collectionElement.bindAndGet(other.variables)))
{code}
I'd like to see the error cases tested as well:
* Negative list index
* List index out of range
* Element access on sets
* Element access on non-collection types
* Null element access for maps and sets
* Two non-equal conditions
> Map element is not allowed in CAS condition with DELETE/UPDATE query
> --------------------------------------------------------------------
>
> Key: CASSANDRA-6914
> URL: https://issues.apache.org/jira/browse/CASSANDRA-6914
> Project: Cassandra
> Issue Type: Bug
> Reporter: Dmitriy Ukhlov
> Assignee: Sylvain Lebresne
> Fix For: 2.0.7
>
> Attachments: 6914.txt
>
>
> {code}
> CREATE TABLE test (id int, data map<text,text>, PRIMARY KEY(id));
> INSERT INTO test (id, data) VALUES (1,{'a':'1'});
> DELETE FROM test WHERE id=1 IF data['a']=null;
> Bad Request: line 1:40 missing EOF at '='
> UPDATE test SET data['b']='2' WHERE id=1 IF data['a']='1';
> Bad Request: line 1:53 missing EOF at '='
> {code}
> These queries was successfuly executed with cassandra 2.0.5, but don't work in 2.0.6 release
--
This message was sent by Atlassian JIRA
(v6.2#6252)