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

Sylvain Lebresne updated CASSANDRA-5141:
----------------------------------------

    Attachment: 5141.txt

Yes, the parser can't distinguish between empty set and empty map, so it always 
pick empty set and delegate the real choice to when we have type information. 
Now there used to be code that was handling that in UpdateStatement but it 
seems to have gone away (haven't found when but haven't look very hard).

Anyway, attaching code that adds back the code to handle that.
                
> Can not insert an empty map. 
> -----------------------------
>
>                 Key: CASSANDRA-5141
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-5141
>             Project: Cassandra
>          Issue Type: Bug
>    Affects Versions: 1.2.0
>            Reporter: Krzysztof Cieslinski Cognitum
>            Priority: Minor
>         Attachments: 5141.txt
>
>
> It is not possible to insert an empty map. It looks like the "{}" is reserved 
> only for Set.
> So when for table:
> {code}
> CREATE TABLE users (
>     id text PRIMARY KEY,
>     surname text,
>     favs map<text, text>
> )
> {code}
> I try to insert map without any elements:
> {code}
> cqlsh:test> insert into users(id,surname,favs) values('aaa','aaa',{});
> {code}
> I get:
> {code}
>  Bad Request: Set operations are only supported on Set typed columns, but 
> org.apache.cassandra.db.marshal.MapType(org.apache.cassandra.db.marshal.UTF8Type,org.apache.cassandra.db.marshal.UTF8Type)
>  given.
> text could not be lexed at line 1, char 63
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to