hive-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Dave Nicodemus <dave.nicode...@gmail.com>
Subject Re: NPE from simple nested ANSI Join
Date Fri, 05 Feb 2016 14:26:28 GMT
Entered :
https://issues.apache.org/jira/browse/HIVE-13012

On Thu, Feb 4, 2016 at 6:58 PM, Sergey Shelukhin <sergey@hortonworks.com>
wrote:

> The stack below looks like a bug; Hive should support joins like these, or
> it should fail with a parse error, not an NPE. Can you open a JIRA?
>
> On 16/2/4, 15:15, "Nicholas Hakobian" <nicholas.hakobian@rallyhealth.com>
> wrote:
>
> >I'm only aware of this:
> >https://cwiki.apache.org/confluence/display/Hive/LanguageManual+Joins
> >but its unclear if it supports your syntax or not.
> >
> >Nicholas Szandor Hakobian
> >Data Scientist
> >Rally Health
> >nicholas.hakobian@rallyhealth.com
> >
> >On Thu, Feb 4, 2016 at 12:57 PM, Dave Nicodemus
> ><dave.nicodemus@gmail.com> wrote:
> >> Thanks Nick,
> >>
> >> I did a few experiments and found that the version of the query below
> >>does
> >> work. So I'm not sure about your theory. Do you know if there is a
> >>document
> >> that spells out the exact accepted syntax ?
> >>
> >> SELECT COUNT(*)
> >> FROM (nation n INNER JOIN customer c ON n.n_nationkey = c.c_nationkey)
> >>INNER
> >> JOIN orders o ON c.c_custkey = o.o_custkey;
> >>
> >>
> >>
> >>
> >> On Thu, Feb 4, 2016 at 3:45 PM, Nicholas Hakobian
> >> <nicholas.hakobian@rallyhealth.com> wrote:
> >>>
> >>> I don't believe Hive supports that join format. Its expecting either a
> >>> table name or a subquery. If its a subquery, it usually requires it to
> >>> have a table name alias so it can be referenced in an outer statement.
> >>>
> >>> -Nick
> >>>
> >>> Nicholas Szandor Hakobian
> >>> Data Scientist
> >>> Rally Health
> >>> nicholas.hakobian@rallyhealth.com
> >>>
> >>> On Thu, Feb 4, 2016 at 11:28 AM, Dave Nicodemus
> >>> <dave.nicodemus@gmail.com> wrote:
> >>> > Using hive 1.2.1.2.3  Connecting using JDBC, issuing the following
> >>>query
> >>> > :
> >>> >
> >>> > SELECT COUNT(*)
> >>> > FROM nation n
> >>> >     INNER JOIN (customer c
> >>> >                          INNER JOIN orders o ON c.c_custkey =
> >>> > o.o_custkey)
> >>> >      ON n.n_nationkey = c.c_nationkey;
> >>> >
> >>> > Generates the NPE and stack below. Fields are integer data type
> >>> >
> >>> > Does anyone know if this is a known issue  and whether it's fixed
> >>> > someplace
> >>> > ?
> >>> >
> >>> > Thanks,
> >>> > Dave
> >>> >
> >>> > Stack
> >>> > --------
> >>> > Caused by: java.lang.NullPointerExcEeption: Remote
> >>> > java.lang.NullPointerException: null
> >>> >
> >>> >         at
> >>> >
> >>> >
> >>>org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.isPresent(SemanticAnaly
> >>>zer.java:2046)
> >>> >         at
> >>> >
> >>> >
> >>>org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.parseJoinCondPopulateAl
> >>>ias(SemanticAnalyzer.java:2109)
> >>> >         at
> >>> >
> >>> >
> >>>org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.parseJoinCondPopulateAl
> >>>ias(SemanticAnalyzer.java:2185)
> >>> >         at
> >>> >
> >>> >
> >>>org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.parseJoinCondition(Sema
> >>>nticAnalyzer.java:2445)
> >>> >         at
> >>> >
> >>> >
> >>>org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.parseJoinCondition(Sema
> >>>nticAnalyzer.java:2386)
> >>> >         at
> >>> >
> >>> >
> >>>org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.genJoinTree(SemanticAna
> >>>lyzer.java:8192)
> >>> >         at
> >>> >
> >>> >
> >>>org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.genJoinTree(SemanticAna
> >>>lyzer.java:8131)
> >>> >         at
> >>> >
> >>> >
> >>>org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.genPlan(SemanticAnalyze
> >>>r.java:9709)
> >>> >         at
> >>> >
> >>> >
> >>>org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.genPlan(SemanticAnalyze
> >>>r.java:9636)
> >>> >         at
> >>> >
> >>> >
> >>>org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.genOPTree(SemanticAnaly
> >>>zer.java:10109)
> >>> >         at
> >>> >
> >>> >
> >>>org.apache.hadoop.hive.ql.parse.CalcitePlanner.genOPTree(CalcitePlanner.
> >>>java:329)
> >>> >         at
> >>> >
> >>> >
> >>>org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.analyzeInternal(Semanti
> >>>cAnalyzer.java:10120)
> >>> >         at
> >>> >
> >>> >
> >>>org.apache.hadoop.hive.ql.parse.CalcitePlanner.analyzeInternal(CalcitePl
> >>>anner.java:211)
> >>> >         at
> >>> >
> >>> >
> >>>org.apache.hadoop.hive.ql.parse.BaseSemanticAnalyzer.analyze(BaseSemanti
> >>>cAnalyzer.java:227)
> >>> >         at org.apache.hadoop.hive.ql.Driver.compile(Driver.java:454)
> >>> >         at org.apache.hadoop.hive.ql.Driver.compile(Driver.java:314)
> >>> >         at
> >>> > org.apache.hadoop.hive.ql.Driver.compileInternal(Driver.java:1164)
> >>> >         at
> >>> > org.apache.hadoop.hive.ql.Driver.compileAndRespond(Driver.java:1158)
> >>> >         at
> >>> >
> >>> >
> >>>org.apache.hive.service.cli.operation.SQLOperation.prepare(SQLOperation.
> >>>java:110)
> >>> >
> >>> >
> >>> >
> >>> >
> >>
> >>
> >
>
>

Mime
View raw message