cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jamie Hankins (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CASSANDRA-10263) Insert in Cassandra in a collection, values with single quote
Date Thu, 27 Apr 2017 19:00:07 GMT

    [ https://issues.apache.org/jira/browse/CASSANDRA-10263?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15987282#comment-15987282
] 

Jamie Hankins commented on CASSANDRA-10263:
-------------------------------------------

By that logic, why isn't the JSON result also escaped?

{code}
cqlsh:gii> insert into test (name,values) values ('Tu''pac',{'fo''o':'josemy''s house'});
cqlsh:gii> select * from test;
 name    | values
---------+------------------------------
  Tu'pac | {'fo''o': 'josemy''s house'}
cqlsh:gii> select json * from test;
 [json]
----------------------------------------------------------
 {"name": "Tu'pac", "values": {"fo'o": "josemy's house"}}
{code}

The easiest thing is just to say "by design", but returning the escaped single-quotes is counter
to any other DBMS.

> Insert in Cassandra in a collection, values with single quote
> -------------------------------------------------------------
>
>                 Key: CASSANDRA-10263
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-10263
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Jduarte
>            Assignee: Benjamin Lerer
>         Attachments: terminal.png
>
>
> I think there is a problem with single quotes in collection fields. This is what I try:
> Table: {{CREATE TABLE test (name text, foo map<text,text>, PRIMARY KEY(name));}}
> Insert:  {code}INSERT INTO test (name, foo) VALUES ( 'jos''emy',{'foo':'josemy''s houñse'});{code}
> Query: {{SELECT * FROM  test;}}
> {code}
>  name    | foo
> -----------+-----------------------------
>  jos'emy | {'foo': 'josemy''s houñse'}
> {code}
> As you can see, Cassandra replace the double quote in the simple "name" field, but does
not replace the quotes in the field inside the map. The result (I think) should be:
> {code}
>  name    | foo
> ---------+-----------------------------
>  jos'emy |   {'foo': 'josemy's houñse'}
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cassandra.apache.org
For additional commands, e-mail: commits-help@cassandra.apache.org


Mime
View raw message