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

RexNode simplification does not traverse unknown functions

VotersWatch issueWatchersLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 1.19.0
    • None

    Description

      Currently simplification concentrates on basic constructs (and/or/=/...), but if it encounters an UDF which is not known; the recursion is stopped.

      For example the following expression is not simplified:

        @Test public void testSimplifyRecurseIntoArithmetics() {
          checkSimplify(
              plus(literal(1),
                  case_(
                      falseLiteral, literal(1),
                      trueLiteral, literal(2),
                      literal(3))),
              "+(1, 2)");
        }
      

      Attachments

        Issue Links

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            kgyrtkirk Zoltan Haindrich
            kgyrtkirk Zoltan Haindrich
            Votes:
            0 Vote for this issue
            Watchers:
            4 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 - 1h 40m
                1h 40m

                Slack

                  Issue deployment