[ https://issues.apache.org/jira/browse/HIVE-3872?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Phabricator updated HIVE-3872: ------------------------------ Attachment: HIVE-3872.D7965.1.patch navis requested code review of "HIVE-3872 [jira] MAP JOIN for VIEW thorws NULL pointer exception error". Reviewers: JIRA DPAL-1961 Invalid mapjoin hint throws NPE I have created a view as shown below. CREATE VIEW V1 AS select /*+ MAPJOIN(t1) ,MAPJOIN(t2) */ t1.f1, t1.f2, t1.f3, t1.f4, t2.f1, t2.f2, t2.f3 from TABLE1 t1 join TABLE t2 on ( t1.f2= t2.f2 and t1.f3 = t2.f3 and t1.f4 = t2.f4 ) group by t1.f1, t1.f2, t1.f3, t1.f4, t2.f1, t2.f2, t2.f3 View get created successfully however when I execute below mentioned SQL or any SQL on the view get NULLPOINTER exception error hive> select count from V1; FAILED: NullPointerException null hive> Is there anything wrong with the view creation ? Next I created view without MAPJOIN hints CREATE VIEW V1 AS select t1.f1, t1.f2, t1.f3, t1.f4, t2.f1, t2.f2, t2.f3 from TABLE1 t1 join TABLE t2 on ( t1.f2= t2.f2 and t1.f3 = t2.f3 and t1.f4 = t2.f4 ) group by t1.f1, t1.f2, t1.f3, t1.f4, t2.f1, t2.f2, t2.f3 Before executing select SQL I excute set hive.auto.convert.join=true; I am getting beloow mentioned warnings java.lang.InstantiationException: org.apache.hadoop.hive.ql.parse.ASTNodeOrigin Continuing ... java.lang.RuntimeException: failed to evaluate: <unbound>=Class.new(); Continuing ... And I see from log that total 5 mapreduce jobs are started however when don't set auto.convert.join to true, I see only 3 mapreduce jobs getting invoked. Total MapReduce jobs = 5 Ended Job = 1116112419, job is filtered out (removed at runtime). Ended Job = -33256989, job is filtered out (removed at runtime). WARNING: org.apache.hadoop.metrics.jvm.EventCounter is deprecated. Please use org.apache.hadoop.log.metrics.EventCounter in all the log4j.properties files. TEST PLAN EMPTY REVISION DETAIL https://reviews.facebook.net/D7965 AFFECTED FILES ql/src/java/org/apache/hadoop/hive/ql/ErrorMsg.java ql/src/java/org/apache/hadoop/hive/ql/optimizer/MapJoinProcessor.java ql/src/test/queries/clientnegative/invalid_mapjoin1.q ql/src/test/results/clientnegative/invalid_mapjoin1.q.out MANAGE HERALD DIFFERENTIAL RULES https://reviews.facebook.net/herald/view/differential/ WHY DID I GET THIS EMAIL? https://reviews.facebook.net/herald/transcript/19185/ To: JIRA, navis > MAP JOIN for VIEW thorws NULL pointer exception error > ------------------------------------------------------ > > Key: HIVE-3872 > URL: https://issues.apache.org/jira/browse/HIVE-3872 > Project: Hive > Issue Type: Bug > Components: Views > Affects Versions: 0.9.0 > Reporter: Santosh Achhra > Priority: Critical > Labels: HINTS, HIVE, MAPJOIN, VIEW > Attachments: HIVE-3872.D7965.1.patch > > > I have created a view as shown below. > CREATE VIEW V1 AS > select /*+ MAPJOIN(t1) ,MAPJOIN(t2) */ t1.f1, t1.f2, t1.f3, t1.f4, t2.f1, > t2.f2, t2.f3 from TABLE1 t1 join TABLE t2 on ( t1.f2= t2.f2 and t1.f3 = t2.f3 > and t1.f4 = t2.f4 ) group by t1.f1, t1.f2, t1.f3, t1.f4, t2.f1, t2.f2, t2.f3 > View get created successfully however when I execute below mentioned SQL or > any SQL on the view get NULLPOINTER exception error > hive> select count (*) from V1; > FAILED: NullPointerException null > hive> > Is there anything wrong with the view creation ? > Next I created view without MAPJOIN hints > CREATE VIEW V1 AS > select t1.f1, t1.f2, t1.f3, t1.f4, t2.f1, t2.f2, t2.f3 from TABLE1 t1 join > TABLE t2 on ( t1.f2= t2.f2 and t1.f3 = t2.f3 and t1.f4 = t2.f4 ) group by > t1.f1, t1.f2, t1.f3, t1.f4, t2.f1, t2.f2, t2.f3 > Before executing select SQL I excute set hive.auto.convert.join=true; > I am getting beloow mentioned warnings > java.lang.InstantiationException: > org.apache.hadoop.hive.ql.parse.ASTNodeOrigin > Continuing ... > java.lang.RuntimeException: failed to evaluate: <unbound>=Class.new(); > Continuing ... > And I see from log that total 5 mapreduce jobs are started however when don't > set auto.convert.join to true, I see only 3 mapreduce jobs getting invoked. > Total MapReduce jobs = 5 > Ended Job = 1116112419, job is filtered out (removed at runtime). > Ended Job = -33256989, job is filtered out (removed at runtime). > WARNING: org.apache.hadoop.metrics.jvm.EventCounter is deprecated. Please use > org.apache.hadoop.log.metrics.EventCounter in all the log4j.properties files. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira