You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@drill.apache.org by "Chris Westin (JIRA)" <ji...@apache.org> on 2015/07/02 00:17:05 UTC

[jira] [Updated] (DRILL-3403) handled incorrectly

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

Chris Westin updated DRILL-3403:
--------------------------------
    Component/s: Execution - Data Types

> <Unicode 6 digit escape value> handled incorrectly
> --------------------------------------------------
>
>                 Key: DRILL-3403
>                 URL: https://issues.apache.org/jira/browse/DRILL-3403
>             Project: Apache Drill
>          Issue Type: Bug
>          Components: Execution - Data Types
>            Reporter: Daniel Barclay (Drill)
>             Fix For: 1.2.0
>
>
> The {{<Unicode 6 digit escape value>}} syntax (e.g., U&'$+000000' UESCAPE '$') is not handled correctly.
> In particular, the parser doesn't seem to recognize that the first character after the escape character is a "{{+}}", it takes the first three hex digits and decodes them into a character, and then it takes the next three hex-digit characters as plain characters.
> In the following, note how the part with a backslash followed by the {{+000043}} part yields a NULL (as evidenced by the unaligned trailing vertical bar) and "043" instead of yielding "C":
> {noformat}
> 0: jdbc:drill:zk=local> SELECT  U&'\0041 2 \+000043'  UESCAPE '\' FROM INFORMATION_SCHEMA.CATALOGS;
> +-----------+
> |  EXPR$0   |
> +-----------+
> | A 2 043  |
> +-----------+
> 1 row selected (0.253 seconds)
> 0: jdbc:drill:zk=local> 
> {noformat}
> (This means that Drill can't accept character string literals containing characters beyond code point U+00FFFF.)



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