Stamatis Zampetakis created HIVE-29380:
------------------------------------------

             Summary: Drop synthetic HiveProject and 
HiveFilterProjectTSTransposeRule
                 Key: HIVE-29380
                 URL: https://issues.apache.org/jira/browse/HIVE-29380
             Project: Hive
          Issue Type: Task
            Reporter: Stamatis Zampetakis
            Assignee: Stamatis Zampetakis


The [synthetic indicator in 
HiveProject|https://github.com/apache/hive/blob/ee7138bf7a1a1ee1de07fa2243fe947a627268cb/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/reloperators/HiveProject.java#L49]
 was introduced alongside HiveFilterProjectTSTransposeRule in HIVE-11110 as way 
to restrict the application of project pushdown (PPD) to a limited number of 
cases. The rule was made to apply only on projections directly over a table 
scan that have been introduced after field trimming.

In fact, the synthetic indicator is completely redundant since if we restrict 
the rule matches strictly to projections over table scans we can have the same 
outcome without the need to maintain an explicit indicator that specializes the 
behavior of the projection operator.

Dropping the redundant logic and rule reduces code maintenance and tech-debt 
and facilitates the detection of equivalent expressions/plans since there are 
no multiple versions of a project operator.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to