You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hive.apache.org by "Aihua Xu (JIRA)" <ji...@apache.org> on 2018/06/20 20:47:00 UTC

[jira] [Updated] (HIVE-19948) HiveCli is not splitting the command by semicolon properly if quotes are inside the string

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

Aihua Xu updated HIVE-19948:
----------------------------
    Attachment: HIVE-19948.1.patch

> HiveCli is not splitting the command by semicolon properly if quotes are inside the string 
> -------------------------------------------------------------------------------------------
>
>                 Key: HIVE-19948
>                 URL: https://issues.apache.org/jira/browse/HIVE-19948
>             Project: Hive
>          Issue Type: Bug
>          Components: CLI
>    Affects Versions: 2.2.0
>            Reporter: Aihua Xu
>            Assignee: Aihua Xu
>            Priority: Major
>         Attachments: HIVE-19948.1.patch
>
>
> HIVE-15297 tries to split the command by considering semicolon inside string, but it doesn't consider the case that quotes can also be inside string. 
> For the following command {{insert into escape1 partition (ds='1', part='3') values ("abc' ");}}, it will fail with 
> {noformat}
> 18/06/19 16:37:05 ERROR ql.Driver: FAILED: ParseException line 1:64 extraneous input ';' expecting EOF near '<EOF>'
> org.apache.hadoop.hive.ql.parse.ParseException: line 1:64 extraneous input ';' expecting EOF near '<EOF>'
> 	at org.apache.hadoop.hive.ql.parse.ParseDriver.parse(ParseDriver.java:220)
> 	at org.apache.hadoop.hive.ql.parse.ParseUtils.parse(ParseUtils.java:74)
> 	at org.apache.hadoop.hive.ql.parse.ParseUtils.parse(ParseUtils.java:67)
> 	at org.apache.hadoop.hive.ql.Driver.compile(Driver.java:606)
> 	at org.apache.hadoop.hive.ql.Driver.compileInternal(Driver.java:1686)
> 	at org.apache.hadoop.hive.ql.Driver.compileAndRespond(Driver.java:1633)
> 	at org.apache.hadoop.hive.ql.Driver.compileAndRespond(Driver.java:1628)
> 	at org.apache.hadoop.hive.ql.reexec.ReExecDriver.compileAndRespond(ReExecDriver.java:126)
> 	at org.apache.hadoop.hive.ql.reexec.ReExecDriver.run(ReExecDriver.java:214)
> 	at org.apache.hadoop.hive.cli.CliDriver.processLocalCmd(CliDriver.java:239)
> 	at org.apache.hadoop.hive.cli.CliDriver.processCmd(CliDriver.java:188)
> 	at org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:402)
> 	at org.apache.hadoop.hive.cli.CliDriver.executeDriver(CliDriver.java:821)
> 	at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:759)
> 	at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:683)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.lang.reflect.Method.invoke(Method.java:498)
> 	at org.apache.hadoop.util.RunJar.run(RunJar.java:239)
> 	at org.apache.hadoop.util.RunJar.main(RunJar.java:153)
> {noformat}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)