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

Paulo Motta commented on CASSANDRA-15458:
-----------------------------------------

I noticed this issue is a duplicate of CASSANDRA-10263 which was closed as not 
a problem. Since this seems to be a recurrent confusion I created 
CASSANDRA-18170 to document this behavior.

I squashed [~yziadeh]'s tests validating the quoting behavior into this commit: 
[https://github.com/pauloricardomg/cassandra/commit/437acae1e80f12e02e317168402874c64c606188]

CI apparently looks good: 
[https://ci-cassandra.apache.org/view/patches/job/Cassandra-devbranch/2201/]:
* 
[SelectTest|https://ci-cassandra.apache.org/view/patches/job/Cassandra-devbranch/2201/testReport/org.apache.cassandra.cql3.validation.operations/SelectTest/]
* 
[test_cqlsh_completion|https://ci-cassandra.apache.org/view/patches/job/Cassandra-devbranch/2201/testReport/cqlshlib.python3.jdk8.cython.test.test_cqlsh_completion/]
* 
[test_cqlsh_output|https://ci-cassandra.apache.org/view/patches/job/Cassandra-devbranch/2201/testReport/cqlshlib.python3.jdk8.cython.test.test_cqlsh_output/]

[~brandon.williams] ok to commit the tests and close this as not a problem?

> CQL: Unable to escape single quote in a map<int,text> attribute
> ---------------------------------------------------------------
>
>                 Key: CASSANDRA-15458
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-15458
>             Project: Cassandra
>          Issue Type: Bug
>          Components: CQL/Interpreter, CQL/Semantics
>            Reporter: Abhijeet Singh
>            Assignee: Yaman Ziadeh
>            Priority: Normal
>              Labels: AdventCalendar2021, lhf
>         Attachments: cass-screen.png
>
>
> h3. Overview
> For {{text}} attributes, CQL allows escaping single quote [using additional 
> single 
> quote|http://mail-archives.apache.org/mod_mbox/cassandra-user/201108.mbox/%3c20110803152250.294...@gmx.net%3E].
>  But applying the same syntax for a {{map<int,text>}} attribute does not 
> work. Inconsistent behavior was observed between {{text}} datatype and 
> {{map<int,text>}} datatype.
> h3. CQL semantic proposal
> Cassandra (CQL) should apply same escaping semantics on {{text}} and 
> text-within-map {{map<int,text>}} datatypes.
> h3. Reproducing the bug:
> CREATE query: 
> {code:java}
> CREATE TABLE university.test (id int, data map<int, text>, PRIMARY KEY 
> (id));{code}
>  INSERT query: 
> {code:java}
> insert into university.test (id, data) values(1, {1:'I''m newb'});{code}
> On running the aforementioned INSERT query, Cassandra inserts and returns 
> {{\{1: 'I''m newb'}}} while the expected result is {{\{1: 'I'm newb'}}}
> h3. Technical details 
> OS: CentOS 7
> Kernel: Linux 3.10.0-1062.9.1.el7.x86_64
> Cassandra version: 3.11.5
> Screenshot: [Output after SELECT query|https://i.stack.imgur.com/PLAan.png]
>   
> +Additional information for newcomers:+
> The issue seems to come from the ANTLR Lexer logic for {{STRING_LITERAL}}. A 
> unit test should also be added in {{SelectTest}}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

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

Reply via email to