Aleksey Plekhanov created IGNITE-16107:
------------------------------------------

             Summary: Calcite engine. Project and filters are not merged into 
scan node correctly
                 Key: IGNITE-16107
                 URL: https://issues.apache.org/jira/browse/IGNITE-16107
             Project: Ignite
          Issue Type: Improvement
            Reporter: Aleksey Plekhanov


{{ProjectScanMergeRule}} and {{FilterScanMergeRule}} have several issues:
 # {{FilterScanMergeRule}} is not applied on the HEP phase, and due to this in 
most cases {{ProjectScanMergeRule}} can't be correctly applied in the HEP phase 
too. There are several useless transformations that can be avoided if 
{{FilterScanMergeRule}} will apply (for example, in trivial scan with projects 
and filter, new projects created below filter in {{{}trimUnusedFields{}}}, then 
this projects moved above filter in {{{}FilterProjectTranposeRule{}}}, then 
top-level projects and trim-projects merged in {{{}ProjectMergeRule{}}}, then 
project created below filter again in {{{}ProjectFilterTranposeRule{}}}, then 
it merged into scan by {{ProjectScanMergeRule}} and prevents to merge top-level 
project later).
 # {{ProjectScanMergeRule.INDEX_SCAN_SKIP_CORRELATED}} is useless since there 
are no index scans on the HEP phase.
 # Traits are created for logical nodes (in some cases not correct), but it's 
redundant (only physical nodes require traits).
 # {{ProjectScanMergeRule}} can't merge projects if another project is already 
merged into a scan.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to