Gianluca Righetto created CASSANDRA-9190:
--------------------------------------------

             Summary: Map keys aren’t properly serialized as strings in SELECT 
JSON queries
                 Key: CASSANDRA-9190
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-9190
             Project: Cassandra
          Issue Type: Bug
          Components: API
            Reporter: Gianluca Righetto


When I run a SELECT JSON query on a table that contains a column of type map, 
the JSON output doesn’t wrap the map keys with quotes, thus creating a 
non-standard JSON representation, which doesn’t play along with JSON parsers 
very well. 

Here’s an example where the map keys are actually a set:

{code}
create table table1 (id int primary key, mymap map<frozen<set<int>>,int>);
insert into table1 (id,mymap) values (1, {{1,2,3,4}:1});
select json id,mymap from table1;
{code}

The output is:

{noformat}
{"id": 1, "mymap": {[1, 2, 3, 4]: 1}}
{noformat}

But what I expected was that the map key, in this case the entire integer set, 
would be wrapped with quotes.
The same thing happens when the key is a primitive, such as int, or when it’s 
another type of collection.

I tried this with the latest version of the Cassandra codebase from the 
repository’s trunk (1f65a12c33).



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

Reply via email to