You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hive.apache.org by "Carter Shanklin (JIRA)" <ji...@apache.org> on 2017/07/04 21:22:01 UTC

[jira] [Created] (HIVE-17024) HPL/SQL: CLI fails to exit after NPE using embedded connection

Carter Shanklin created HIVE-17024:
--------------------------------------

             Summary: HPL/SQL: CLI fails to exit after NPE using embedded connection
                 Key: HIVE-17024
                 URL: https://issues.apache.org/jira/browse/HIVE-17024
             Project: Hive
          Issue Type: Bug
          Components: hpl/sql
            Reporter: Carter Shanklin
            Priority: Critical


This bug is part of a series of issues and surprising behavior I encountered writing a reporting script that would aggregate values and give rows different classifications based on an the aggregate. Addressing some or all of these issues would make HPL/SQL more accessible to newcomers.
This happened during the error reported in XXX (bug TBD)

Script is this:
create table if not exists test1(col1 integer);
create table if not exists test2(col1 double);
create table if not exists test3(col1 decimal(10, 4));
create table if not exists test4(col1 string);
create table if not exists test5(col1 varchar(20));

Output is this:
[vagrant@trunk hplsql]$ hplsql -f temp3.sql
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/home/vagrant/hivedist/apache-hive-3.0.0-SNAPSHOT-bin/lib/log4j-slf4j-impl-2.6.2.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/usr/hdp/2.6.1.0-128/hadoop/lib/slf4j-log4j12-1.7.10.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.apache.logging.slf4j.Log4jLoggerFactory]
Open connection: jdbc:hive2:// (5.83 sec)
Starting query
OK
Query executed successfully (2.31 sec)
Exception in thread "main" java.lang.NullPointerException
        at org.apache.hive.hplsql.Exec.evalPop(Exec.java:2398)
        at org.apache.hive.hplsql.Stmt.createTableDefinition(Stmt.java:169)
        at org.apache.hive.hplsql.Stmt.createTable(Stmt.java:142)
        at org.apache.hive.hplsql.Exec.visitCreate_table_stmt(Exec.java:1366)
        at org.apache.hive.hplsql.Exec.visitCreate_table_stmt(Exec.java:52)
        at org.apache.hive.hplsql.HplsqlParser$Create_table_stmtContext.accept(HplsqlParser.java:4198)
        at org.antlr.v4.runtime.tree.AbstractParseTreeVisitor.visitChildren(AbstractParseTreeVisitor.java:70)
        at org.apache.hive.hplsql.Exec.visitStmt(Exec.java:1013)
        at org.apache.hive.hplsql.Exec.visitStmt(Exec.java:52)
        at org.apache.hive.hplsql.HplsqlParser$StmtContext.accept(HplsqlParser.java:1018)
        at org.antlr.v4.runtime.tree.AbstractParseTreeVisitor.visitChildren(AbstractParseTreeVisitor.java:70)
        at org.apache.hive.hplsql.HplsqlBaseVisitor.visitBlock(HplsqlBaseVisitor.java:28)
        at org.apache.hive.hplsql.HplsqlParser$BlockContext.accept(HplsqlParser.java:452)
        at org.antlr.v4.runtime.tree.AbstractParseTreeVisitor.visitChildren(AbstractParseTreeVisitor.java:70)
        at org.apache.hive.hplsql.Exec.visitProgram(Exec.java:920)
        at org.apache.hive.hplsql.Exec.visitProgram(Exec.java:52)
        at org.apache.hive.hplsql.HplsqlParser$ProgramContext.accept(HplsqlParser.java:393)
        at org.antlr.v4.runtime.tree.AbstractParseTreeVisitor.visit(AbstractParseTreeVisitor.java:42)
        at org.apache.hive.hplsql.Exec.run(Exec.java:775)
        at org.apache.hive.hplsql.Exec.run(Exec.java:751)
        at org.apache.hive.hplsql.Hplsql.main(Hplsql.java:23)
        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:233)
        at org.apache.hadoop.util.RunJar.main(RunJar.java:148)

I attached a jstack.

When I use a Hiveserver2 connection instead, I get an NPE but it doesn't hang (at least not on the client side)

Version = 3.0.0-SNAPSHOT r71f52d8ad512904b3f2c4f04fe39a33f2834f1f2



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)