You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hive.apache.org by "Pritha Dawn (Jira)" <ji...@apache.org> on 2021/05/26 17:49:00 UTC
[jira] [Commented] (HIVE-25167) Invalid table alias or column
reference when Cbo is enabled while CTAS from left join
[ https://issues.apache.org/jira/browse/HIVE-25167?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17351976#comment-17351976 ]
Pritha Dawn commented on HIVE-25167:
------------------------------------
The stack trace is :
Invalid table alias or column reference '$hdt$_1': (possible column names are: column_1, column_4, dt)
at org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.genAllExprNodeDesc(SemanticAnalyzer.java:12869)
at org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.genExprNodeDesc(SemanticAnalyzer.java:12809)
at org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.genExprNodeDesc(SemanticAnalyzer.java:12777)
at org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.genExprNodeDesc(SemanticAnalyzer.java:12755)
at org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.genJoinOperatorChildren(SemanticAnalyzer.java:8870)
at org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.genJoinOperator(SemanticAnalyzer.java:9126)
at org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.genJoinPlan(SemanticAnalyzer.java:9331)
at org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.genPlan(SemanticAnalyzer.java:11553)
at org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.genPlan(SemanticAnalyzer.java:11433)
at org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.genOPTree(SemanticAnalyzer.java:12236)
at org.apache.hadoop.hive.ql.parse.CalcitePlanner.genOPTree(CalcitePlanner.java:621)
at org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.analyzeInternal(SemanticAnalyzer.java:12326)
at org.apache.hadoop.hive.ql.parse.CalcitePlanner.analyzeInternal(CalcitePlanner.java:361)
at org.apache.hadoop.hive.ql.parse.BaseSemanticAnalyzer.analyze(BaseSemanticAnalyzer.java:289)
at org.apache.hadoop.hive.ql.Driver.compile(Driver.java:664)
at org.apache.hadoop.hive.ql.Driver.compileInternal(Driver.java:1869)
at org.apache.hadoop.hive.ql.Driver.compileAndRespond(Driver.java:1816)
at org.apache.hadoop.hive.ql.Driver.compileAndRespond(Driver.java:1811)
at org.apache.hadoop.hive.ql.reexec.ReExecDriver.compileAndRespond(ReExecDriver.java:126)
at org.apache.hive.service.cli.operation.SQLOperation.prepare(SQLOperation.java:197)
at org.apache.hive.service.cli.operation.SQLOperation.runInternal(SQLOperation.java:262)
at org.apache.hive.service.cli.operation.Operation.run(Operation.java:260)
at org.apache.hive.service.cli.session.HiveSessionImpl.executeStatementInternal(HiveSessionImpl.java:575)
at org.apache.hive.service.cli.session.HiveSessionImpl.executeStatementAsync(HiveSessionImpl.java:561)
at org.apache.hive.service.cli.CLIService.executeStatementAsync(CLIService.java:315)
at org.apache.hive.service.cli.thrift.ThriftCLIService.ExecuteStatement(ThriftCLIService.java:566)
at org.apache.hive.service.rpc.thrift.TCLIService$Processor$ExecuteStatement.getResult(TCLIService.java:1557)
> Invalid table alias or column reference when Cbo is enabled while CTAS from left join
> -------------------------------------------------------------------------------------
>
> Key: HIVE-25167
> URL: https://issues.apache.org/jira/browse/HIVE-25167
> Project: Hive
> Issue Type: Bug
> Components: CBO
> Affects Versions: 3.1.0
> Reporter: Pritha Dawn
> Priority: Critical
>
> The query fails with a semantic exception when cbo is enabled but succeeds when cbo is turned off.
> Error Message is "Invalid table alias or column reference '$hdt$_1': (possible column names are: column_1, column_4, dt)"
>
> CREATE TABLE A (
> column_1 int,
> column_2 int,
> column_3 int,
> column_4 int,
> dt int);
>
> Insert into A values (1,2,3,4,5);
> CREATE TABLE B (
> column_1 int,
> column_2 int,
> dt int);
> Insert into B values (1,2,3);
> CREATE TABLE C (
> column_1 int,
> dt int,
> column_5 int);
>
> Insert into C values (1,2,3);
> explain create table test_cbo9 AS
> SELECT
> ACCT.COLUMN_1
> , ACCT.DT
> , ACCT.COLUMN_4
> FROM (
> SELECT
> A.COLUMN_1 AS COLUMN_1
> , A.COLUMN_2 AS COLUMN_2
> , A.COLUMN_3 AS COLUMN_3
> , B.COLUMN_2 AS B_COLUMN_2
> , A.DT AS DT
> , A.COLUMN_4 AS COLUMN_4
> FROM A
> LEFT JOIN B
> ON A.COLUMN_1 = B.COLUMN_1
> ) AS ACCT
> LEFT JOIN C
> ON ACCT.COLUMN_1 = C.COLUMN_1
> AND ACCT.B_COLUMN_2 = 2
> AND C.DT = 2;
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)