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

Migrate RelNode.getChildExps to RelNode.accept(RexShuttle)

VotersWatch issueWatchersLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 1.0.0-incubating
    • 1.0.0-incubating
    • None

    Description

      > What if we kill RelNode.getChildExps and add RelNode
      > RelNode.accept(RexShuttle shuttle) instead?

      Julian Hyde
      +1 That method is very general-purpose. I like it.

      It should respect the immutability of RelNodes and return a new
      RelNode iff there are changes. Most RelNodes, except sub-classes of
      project, filter, join, will just 'return this' right away.

      The shuttle must make only very limited changes. Even changing the
      output type of an expression should not be allowed. We can relax these
      restrictions later, if justified.

      Attachments

        Activity

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

          People

            julianhyde Julian Hyde
            vladimirsitnikov Vladimir Sitnikov
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment