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

Ferdinand Xu resolved HIVE-9171.
--------------------------------
    Resolution: Cannot Reproduce

> After use init file in beeline,the consoleReader is setted null.
> ----------------------------------------------------------------
>
>                 Key: HIVE-9171
>                 URL: https://issues.apache.org/jira/browse/HIVE-9171
>             Project: Hive
>          Issue Type: Bug
>          Components: Beeline
>    Affects Versions: 0.14.0
>            Reporter: Wang Hao
>            Assignee: Ferdinand Xu
>
> when I use init file in beeline ,it has some exception:
> ./beeline -i init.sql -f /tmp/test.sql  --verbose
> 0: jdbc:hive2://hadoop015.dx.momo.com:10000> SELECT
> Error: Error while compiling statement: FAILED: ParseException line 1:6 
> cannot recognize input near '<EOF>' '<EOF>' '<EOF>' in select clause 
> (state=42000,code=40000)
> org.apache.hive.service.cli.HiveSQLException: Error while compiling 
> statement: FAILED: ParseException line 1:6 cannot recognize input near 
> '<EOF>' '<EOF>' '<EOF>' in select clause
>       at org.apache.hive.jdbc.Utils.verifySuccess(Utils.java:231)
>       at org.apache.hive.jdbc.Utils.verifySuccessWithInfo(Utils.java:217)
>       at org.apache.hive.jdbc.HiveStatement.execute(HiveStatement.java:254)
>       at org.apache.hive.beeline.Commands.execute(Commands.java:784)
>       at org.apache.hive.beeline.Commands.sql(Commands.java:665)
>       at org.apache.hive.beeline.BeeLine.dispatch(BeeLine.java:933)
>       at org.apache.hive.beeline.BeeLine.execute(BeeLine.java:796)
>       at org.apache.hive.beeline.BeeLine.executeFile(BeeLine.java:781)
>       at org.apache.hive.beeline.BeeLine.begin(BeeLine.java:726)
>       at 
> org.apache.hive.beeline.BeeLine.mainWithInputRedirection(BeeLine.java:465)
>       at org.apache.hive.beeline.BeeLine.main(BeeLine.java:451)
>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>       at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>       at java.lang.reflect.Method.invoke(Method.java:606)
>       at org.apache.hadoop.util.RunJar.main(RunJar.java:212)
> Caused by: org.apache.hive.service.cli.HiveSQLException: Error while 
> compiling statement: FAILED: ParseException line 1:6 cannot recognize input 
> near '<EOF>' '<EOF>' '<EOF>' in select clause
>       at 
> org.apache.hive.service.cli.operation.Operation.toSQLException(Operation.java:314)
>       at 
> org.apache.hive.service.cli.operation.SQLOperation.prepare(SQLOperation.java:102)
>       at 
> org.apache.hive.service.cli.operation.SQLOperation.runInternal(SQLOperation.java:171)
>       at 
> org.apache.hive.service.cli.operation.Operation.run(Operation.java:256)
>       at 
> org.apache.hive.service.cli.session.HiveSessionImpl.executeStatementInternal(HiveSessionImpl.java:376)
>       at 
> org.apache.hive.service.cli.session.HiveSessionImpl.executeStatementAsync(HiveSessionImpl.java:363)
>       at sun.reflect.GeneratedMethodAccessor23.invoke(Unknown Source)
>       at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>       at java.lang.reflect.Method.invoke(Method.java:606)
>       at 
> org.apache.hive.service.cli.session.HiveSessionProxy.invoke(HiveSessionProxy.java:79)
>       at 
> org.apache.hive.service.cli.session.HiveSessionProxy.access$000(HiveSessionProxy.java:37)
>       at 
> org.apache.hive.service.cli.session.HiveSessionProxy$1.run(HiveSessionProxy.java:64)
>       at java.security.AccessController.doPrivileged(Native Method)
>       at javax.security.auth.Subject.doAs(Subject.java:415)
>       at 
> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1614)
>       at 
> org.apache.hadoop.hive.shims.HadoopShimsSecure.doAs(HadoopShimsSecure.java:536)
>       at 
> org.apache.hive.service.cli.session.HiveSessionProxy.invoke(HiveSessionProxy.java:60)
>       at com.sun.proxy.$Proxy14.executeStatementAsync(Unknown Source)
>       at 
> org.apache.hive.service.cli.CLIService.executeStatementAsync(CLIService.java:247)
>       at 
> org.apache.hive.service.cli.thrift.ThriftCLIService.ExecuteStatement(ThriftCLIService.java:401)
>       at 
> org.apache.hive.service.cli.thrift.TCLIService$Processor$ExecuteStatement.getResult(TCLIService.java:1313)
>       at 
> org.apache.hive.service.cli.thrift.TCLIService$Processor$ExecuteStatement.getResult(TCLIService.java:1298)
>       at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:39)
>       at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:39)
>       at 
> org.apache.hive.service.auth.TSetIpAddressProcessor.process(TSetIpAddressProcessor.java:56)
>       at 
> org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:206)
>       at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>       at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>       at java.lang.Thread.run(Thread.java:745)
> Caused by: java.lang.RuntimeException: 
> org.apache.hadoop.hive.ql.parse.ParseException:line 1:6 cannot recognize 
> input near '<EOF>' '<EOF>' '<EOF>' in select clause
>       at 
> org.apache.hadoop.hive.ql.parse.ParseDriver.parse(ParseDriver.java:202)
>       at 
> org.apache.hadoop.hive.ql.parse.ParseDriver.parse(ParseDriver.java:166)
>       at org.apache.hadoop.hive.ql.Driver.compile(Driver.java:389)
>       at org.apache.hadoop.hive.ql.Driver.compile(Driver.java:303)
>       at org.apache.hadoop.hive.ql.Driver.compileInternal(Driver.java:1067)
>       at org.apache.hadoop.hive.ql.Driver.compileAndRespond(Driver.java:1061)
>       at 
> org.apache.hive.service.cli.operation.SQLOperation.prepare(SQLOperation.java:100)
>       ... 27 more
> In BeeLine.java,I found the consoleReader will be setter "null" in function 
> runInit. And I modify this function ,
> int runInit() {
>         String initFile = getOpts().getInitFile();
>         ConsoleReader csr = consoleReader;
>         if (initFile != null) {
>             info("Running init script " + initFile);
>             try {
>                 return executeFile(initFile);
>             } finally {
>                 exit = false;
>                 consoleReader=csr;
>             }
>         }
>         return ERRNO_OK;
>     }
> Try again,my command  is work.



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

Reply via email to