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 19:32:00 UTC

[jira] [Comment Edited] (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 edited comment on HIVE-25167 at 5/26/21, 7:31 PM:
--------------------------------------------------------------

This is Hive on Tez. 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)


was (Author: pritha):
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)