Hi Dave,

 

Your schema looks like this

 

NATION --< CUSTOMER --< ORDERS

 

I have a similar schema with the following relationship

 

COUNTRIES --< CUSTOMERS --< SALES

 

I tried this one and it works both in Hive 1.2.1 and Spark getting total sales 
for each country

 

SELECT c.country_name AS nation,

       sum (amount_sold) AS salesamount

FROM  countries c

INNER JOIN customers cs

ON c.country_id = cs.country_id

INNER JOIN sales s

ON cs.cust_id = s.cust_id

GROUP BY country_name

ORDER BY country_name

 

It works OK

 

HTH

 

Dr Mich Talebzadeh

 

LinkedIn   
<https://www.linkedin.com/profile/view?id=AAEAAAAWh2gBxianrbJd6zP6AcPCCdOABUrV8Pw>
 
https://www.linkedin.com/profile/view?id=AAEAAAAWh2gBxianrbJd6zP6AcPCCdOABUrV8Pw

 

Sybase ASE 15 Gold Medal Award 2008

A Winning Strategy: Running the most Critical Financial Data on ASE 15

 
<http://login.sybase.com/files/Product_Overviews/ASE-Winning-Strategy-091908.pdf>
 http://login.sybase.com/files/Product_Overviews/ASE-Winning-Strategy-091908.pdf

Author of the books "A Practitioner’s Guide to Upgrading to Sybase ASE 15", 
ISBN 978-0-9563693-0-7. 

co-author "Sybase Transact SQL Guidelines Best Practices", ISBN 
978-0-9759693-0-4

Publications due shortly:

Complex Event Processing in Heterogeneous Environments, ISBN: 978-0-9563693-3-8

Oracle and Sybase, Concepts and Contrasts, ISBN: 978-0-9563693-1-4, volume one 
out shortly

 

 <http://talebzadehmich.wordpress.com/> http://talebzadehmich.wordpress.com

 

NOTE: The information in this email is proprietary and confidential. This 
message is for the designated recipient only, if you are not the intended 
recipient, you should destroy it immediately. Any information in this message 
shall not be understood as given or endorsed by Peridale Technology Ltd, its 
subsidiaries or their employees, unless expressly so stated. It is the 
responsibility of the recipient to ensure that this email is virus free, 
therefore neither Peridale Technology Ltd, its subsidiaries nor their employees 
accept any responsibility.

 

From: Dave Nicodemus [mailto:dave.nicode...@gmail.com] 
Sent: 04 February 2016 19:29
To: user@hive.apache.org
Subject: NPE from simple nested ANSI Join

 

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(SemanticAnalyzer.java:2046)
        at 
org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.parseJoinCondPopulateAlias(SemanticAnalyzer.java:2109)
        at 
org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.parseJoinCondPopulateAlias(SemanticAnalyzer.java:2185)
        at 
org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.parseJoinCondition(SemanticAnalyzer.java:2445)
        at 
org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.parseJoinCondition(SemanticAnalyzer.java:2386)
        at 
org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.genJoinTree(SemanticAnalyzer.java:8192)
        at 
org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.genJoinTree(SemanticAnalyzer.java:8131)
        at 
org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.genPlan(SemanticAnalyzer.java:9709)
        at 
org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.genPlan(SemanticAnalyzer.java:9636)
        at 
org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.genOPTree(SemanticAnalyzer.java:10109)
        at 
org.apache.hadoop.hive.ql.parse.CalcitePlanner.genOPTree(CalcitePlanner.java:329)
        at 
org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.analyzeInternal(SemanticAnalyzer.java:10120)
        at 
org.apache.hadoop.hive.ql.parse.CalcitePlanner.analyzeInternal(CalcitePlanner.java:211)
        at 
org.apache.hadoop.hive.ql.parse.BaseSemanticAnalyzer.analyze(BaseSemanticAnalyzer.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)

 

 

 

Reply via email to