You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@calcite.apache.org by "Maryann Xue (JIRA)" <ji...@apache.org> on 2016/11/21 01:02:46 UTC

[jira] [Created] (CALCITE-1499) Add an option to exclude VolcanoPlanner's "originalRoot" from planning process

Maryann Xue created CALCITE-1499:
------------------------------------

             Summary: Add an option to exclude VolcanoPlanner's "originalRoot" from planning process
                 Key: CALCITE-1499
                 URL: https://issues.apache.org/jira/browse/CALCITE-1499
             Project: Calcite
          Issue Type: Improvement
          Components: core
    Affects Versions: 1.10.0
            Reporter: Maryann Xue
            Assignee: Maryann Xue


The Calcite compilation framework runs a series of Programs for query planning. The default programs consist of some pre-processing HepPrograms, e.g., de-correlation, field-trimming, etc.,  the volcano planning program, and some post-processing HepPrograms. In {{Prepare.optimize()}}, {{planner.setRoot()}} is called before running the programs. As a result, the original rel from sql-to-rel conversion becomes the "originalRoot" in the VolcanoPlanner, and the new rel from the pre-processing programs becomes the new "root". In some cases, we would only want to run volcano planning on the new root based on the assumption that the new root is the desired form after pre-processing. And if we have an option to turn off the planning of the original root, the planning space can be significantly reduced.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)