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

Niek Bartholomeus updated CASSANDRA-12760:
------------------------------------------
    Description: 
I'm using Cassandra to store data coming from Spark and intended for being 
consumed by a javascript front end.

To avoid unnecessary field name mappings I have decided to use mixed case 
fields in Cassandra. I also happily leave it to Cassandra to jsonify the data 
(using SELECT JSON ...) so my scala/play web server can send the results from 
Cassandra straight through to the front end.

I noticed however that all mixed case fields (that were created with quotes as 
Cassandra demands) end up having a double set of quotes

{code}
create table user(id text PRIMARY KEY, "firstName" text);
insert into user(id, "firstName") values ('b', 'Bill');
select json * from user;

 [json]
--------------------------------------
 {"id": "b", "\"firstName\"": "Bill"}
{code}

Ideally that would be:
{code}
 [json]
--------------------------------------
 {"id": "b", "firstName": "Bill"}
{code}

I worked around it for now by removing all "\""'s before sending the json to 
the front end.

  was:
I'm using Cassandra to store data coming from Spark and intended for being 
consumed by a javascript front end.

To avoid unnecessary field name mappings I have decided to use mixed case 
fields in Cassandra. I also happily leave it to Cassandra to jsonify the data 
(using SELECT JSON ...) so my scala/play web server can send the results from 
Cassandra straight through to the front end.

I noticed however that all mixed case fields (that were created with quotes as 
Cassandra demands) end up having a double set of quotes

{code}
create table user(id text PRIMARY KEY, "firstName" text);
insert into user(id, "firstName") values ('b', 'Bill');
select json * from user;

 [json]
--------------------------------------
 {"id": "b", "\"firstName\"": "Bill"}
{code}

Ideally that would be:
{code}
 [json]
--------------------------------------
 {"id": "b", "firstName": "Bill"}
{code}

I worked around it for now by removing all "\""'s before sending the josn to 
the front end.


> SELECT JSON "firstName" FROM ... results in {"\"firstName\"": "Bill"}
> ---------------------------------------------------------------------
>
>                 Key: CASSANDRA-12760
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-12760
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>         Environment: Cassandra 3.7
>            Reporter: Niek Bartholomeus
>
> I'm using Cassandra to store data coming from Spark and intended for being 
> consumed by a javascript front end.
> To avoid unnecessary field name mappings I have decided to use mixed case 
> fields in Cassandra. I also happily leave it to Cassandra to jsonify the data 
> (using SELECT JSON ...) so my scala/play web server can send the results from 
> Cassandra straight through to the front end.
> I noticed however that all mixed case fields (that were created with quotes 
> as Cassandra demands) end up having a double set of quotes
> {code}
> create table user(id text PRIMARY KEY, "firstName" text);
> insert into user(id, "firstName") values ('b', 'Bill');
> select json * from user;
>  [json]
> --------------------------------------
>  {"id": "b", "\"firstName\"": "Bill"}
> {code}
> Ideally that would be:
> {code}
>  [json]
> --------------------------------------
>  {"id": "b", "firstName": "Bill"}
> {code}
> I worked around it for now by removing all "\""'s before sending the json to 
> the front end.



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

Reply via email to