cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sylvain Lebresne (JIRA)" <>
Subject [jira] [Updated] (CASSANDRA-5141) Can not insert an empty map.
Date Fri, 11 Jan 2013 14:46:13 GMT


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:
>             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
> 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)
> 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:

View raw message