You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@drill.apache.org by "Daniel Barclay (Drill) (JIRA)" <ji...@apache.org> on 2015/06/26 22:48:04 UTC

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

Daniel Barclay (Drill) created DRILL-3403:
---------------------------------------------

             Summary: <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
            Reporter: Daniel Barclay (Drill)


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)