[
https://issues.apache.org/jira/browse/HIVE-29559?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Konstantin Bereznyakov reassigned HIVE-29559:
---------------------------------------------
Assignee: Konstantin Bereznyakov
> HIVE-28724 regression: SemanticAnalyzer.materializeCTE uses wrong analyzer
> class (with CBO disabled)
> ----------------------------------------------------------------------------------------------------
>
> Key: HIVE-29559
> URL: https://issues.apache.org/jira/browse/HIVE-29559
> Project: Hive
> Issue Type: Bug
> Reporter: Konstantin Bereznyakov
> Assignee: Konstantin Bereznyakov
> Priority: Major
>
> CalcitePlanner.materializeCTE was fixed to use CreateTableAnalyzer in
> HIVE-28724
> However, SemanticAnalyzer.materializeCTE still uses SemanticAnalyzer directly.
> Bug triggers when: CBO disabled + non-aggregate CTE materialization
> The following very simple .q file reproduces the NPE on the current master:
> {code:java}
> set hive.optimize.cte.materialize.full.aggregate.only=false;
> set hive.cbo.enable=false;
> explain
> WITH cte AS (
> SELECT 1 as id
> )
> SELECT * FROM cte
> UNION ALL
> SELECT * FROM cte
> UNION ALL
> SELECT * FROM cte; {code}
> {code:java}
> ERROR] Failures:[ERROR] TestMiniLlapCliDriver.testCliDriver:62 Client
> execution failed with error code = 40000running
> explainWITH cte AS ( SELECT 1 as id)SELECT * FROM cteUNION ALLSELECT *
> FROM cteUNION ALLSELECT * FROM ctefname=cte_materialize_non_aggr_npe.q
> See ./ql/target/tmp/log/hive.log or ./itests/qtest/target/tmp/log/hive.log,
> or check ./ql/target/surefire-reports or
> ./itests/qtest/target/surefire-reports/ for specific test cases logs.
> java.lang.NullPointerException: Cannot invoke
> "org.apache.hadoop.hive.ql.ddl.table.create.CreateTableDesc.toTable(org.apache.hadoop.hive.conf.HiveConf)"
> because "analyzer.tableDesc" is null at
> org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.materializeCTE(SemanticAnalyzer.java:1585)
> at
> org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.getMetaData(SemanticAnalyzer.java:2402)
> at
> org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.getMetaData(SemanticAnalyzer.java:2350)
> {code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)