Gunther Hagleitner created HIVE-7310: ----------------------------------------
Summary: Turning CBO on results in NPE on some queries Key: HIVE-7310 URL: https://issues.apache.org/jira/browse/HIVE-7310 Project: Hive Issue Type: Sub-task Reporter: Gunther Hagleitner Assignee: Laljo John Pullokkaran On the CBO branch if I do the following: hive> set hive.cbo.enable=true; hive> select i_item_id, > s_state, > GROUPING__ID, > avg(ss_quantity) agg1, > avg(ss_list_price) agg2, > avg(ss_coupon_amt) agg3, > avg(ss_sales_price) agg4 > from store_sales ss > join customer_demographics cd on (ss.ss_cdemo_sk = cd.cd_demo_sk) > join date_dim d on (ss.ss_sold_date_sk = d.d_date_sk) > join store s on (ss.ss_store_sk = s.s_store_sk) > join item i on (ss.ss_item_sk = i.i_item_sk) > where cd_gender = 'M' and > cd_marital_status = 'S' and > cd_education_status = 'Secondary' and > d_year = 2002 and > s_state in ('OH','SD', 'LA', 'MO', 'WA', 'MN') > group by i_item_id, s_state with rollup > order by i_item_id > ,s_state > limit 100 > ; I get an NPE. The stack trace is: java.lang.RuntimeException: java.lang.RuntimeException: java.lang.RuntimeException: java.lang.NullPointerException at org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.analyzeInternal(SemanticAnalyzer.java:9555) at org.apache.hadoop.hive.ql.parse.BaseSemanticAnalyzer.analyze(BaseSemanticAnalyzer.java:328) at org.apache.hadoop.hive.ql.Driver.compile(Driver.java:412) at org.apache.hadoop.hive.ql.Driver.compile(Driver.java:308) at org.apache.hadoop.hive.ql.Driver.compileInternal(Driver.java:962) at org.apache.hadoop.hive.ql.Driver.runInternal(Driver.java:1027) at org.apache.hadoop.hive.ql.Driver.run(Driver.java:898) at org.apache.hadoop.hive.ql.Driver.run(Driver.java:888) at org.apache.hadoop.hive.cli.CliDriver.processLocalCmd(CliDriver.java:277) at org.apache.hadoop.hive.cli.CliDriver.processCmd(CliDriver.java:229) at org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:439) at org.apache.hadoop.hive.cli.CliDriver.executeDriver(CliDriver.java:812) at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:706) at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:645) 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: java.lang.RuntimeException: java.lang.RuntimeException: java.lang.NullPointerException at org.apache.hadoop.hive.ql.parse.SemanticAnalyzer$OptiqBasedPlanner.getOptimizedAST(SemanticAnalyzer.java:11732) at org.apache.hadoop.hive.ql.parse.SemanticAnalyzer$OptiqBasedPlanner.access$200(SemanticAnalyzer.java:11711) at org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.analyzeInternal(SemanticAnalyzer.java:9532) ... 18 more Caused by: java.lang.RuntimeException: java.lang.NullPointerException at net.hydromatic.optiq.tools.Frameworks.withPrepare(Frameworks.java:170) at net.hydromatic.optiq.tools.Frameworks.withPlanner(Frameworks.java:142) at org.apache.hadoop.hive.ql.parse.SemanticAnalyzer$OptiqBasedPlanner.getOptimizedAST(SemanticAnalyzer.java:11727) ... 20 more Caused by: java.lang.NullPointerException at org.eigenbase.reltype.RelDataTypeImpl.getField(RelDataTypeImpl.java:79) at org.apache.hadoop.hive.ql.parse.SemanticAnalyzer$OptiqBasedPlanner.convertAgg(SemanticAnalyzer.java:12129) at org.apache.hadoop.hive.ql.parse.SemanticAnalyzer$OptiqBasedPlanner.genGBRelNode(SemanticAnalyzer.java:12184) at org.apache.hadoop.hive.ql.parse.SemanticAnalyzer$OptiqBasedPlanner.genGBLogicalPlan(SemanticAnalyzer.java:12324) at org.apache.hadoop.hive.ql.parse.SemanticAnalyzer$OptiqBasedPlanner.genLogicalPlan(SemanticAnalyzer.java:12749) at org.apache.hadoop.hive.ql.parse.SemanticAnalyzer$OptiqBasedPlanner.apply(SemanticAnalyzer.java:11758) at org.apache.hadoop.hive.ql.parse.SemanticAnalyzer$OptiqBasedPlanner.apply(SemanticAnalyzer.java:11711) at net.hydromatic.optiq.tools.Frameworks$1.apply(Frameworks.java:146) at net.hydromatic.optiq.prepare.OptiqPrepareImpl.perform(OptiqPrepareImpl.java:536) at net.hydromatic.optiq.tools.Frameworks.withPrepare(Frameworks.java:168) ... 22 more -- This message was sent by Atlassian JIRA (v6.2#6252)