Uploaded image for project: 'Calcite'
  1. Calcite
  2. CALCITE-2899

Deprecate RelTraitPropagationVisitor and remove its usages

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 1.18.0
    • Fix Version/s: 1.19.0
    • Component/s: core

      Description

      RelTraitPropagationVisitor is currently used only for debugging purposes doing nothing more than throwing an assertion error if certain conditions does not hold. By a quick search in the Jira, I couldn't find any issues showing that the visitor really detected some problem. 

      According to the thread "RelTraitPropagationVisitor and useless code policy" in the dev list the class is more or less useless and unlikely to be used in the future.

      Moreover, the visitor traverses complete RelNode subtrees introduced after rule matches (and their traits) affecting also the performance of the planner.

      Finally, the contract and the behavior of the class are not consistent.

      For the above reasons, I propose to deprecate the class and remove its usages.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                zabetak Stamatis Zampetakis
                Reporter:
                zabetak Stamatis Zampetakis
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:

                  Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 50m
                  50m