You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Aleksey Plekhanov (Jira)" <ji...@apache.org> on 2021/12/13 08:21:00 UTC
[jira] [Created] (IGNITE-16107) Calcite engine. Project and filters are not merged into scan node correctly
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)