You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hive.apache.org by "Krisztian Kasa (Jira)" <ji...@apache.org> on 2020/10/30 11:43:00 UTC
[jira] [Assigned] (HIVE-24335) RelOptMaterialization creates
LogicalProject on top of HiveTableScan
[ https://issues.apache.org/jira/browse/HIVE-24335?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Krisztian Kasa reassigned HIVE-24335:
-------------------------------------
> RelOptMaterialization creates LogicalProject on top of HiveTableScan
> --------------------------------------------------------------------
>
> Key: HIVE-24335
> URL: https://issues.apache.org/jira/browse/HIVE-24335
> Project: Hive
> Issue Type: Bug
> Components: Materialized views
> Reporter: Krisztian Kasa
> Assignee: Krisztian Kasa
> Priority: Major
>
> In some cases RelOptMaterialization creates a Project operator on top of materialized view HiveTableScan.
> Ex.: when some columns need to be casted.
> {code:java}
> LogicalProject(empid=[CAST($0):INTEGER NOT NULL], deptno=[$1], name=[$2], salary=[$3], commission=[$4])
> HiveTableScan(table=[[default, mv1_n2]], table:alias=[mv1_n2])
> {code}
> This Project operator is represented by a LogicalProject however a HiveProject should be used.
> Cause: in calcite RelOptMaterialization constructor calls RelOptUtil.createCastRel which uses the RelFactories.DEFAULT_PROJECT_FACTORY
> [https://github.com/apache/calcite/blob/987cb7f7da6ff1cb436718ac93868d50e88e875f/core/src/main/java/org/apache/calcite/plan/RelOptMaterialization.java#L60]
> [https://github.com/apache/calcite/blob/987cb7f7da6ff1cb436718ac93868d50e88e875f/core/src/main/java/org/apache/calcite/plan/RelOptUtil.java#L832]
--
This message was sent by Atlassian Jira
(v8.3.4#803005)