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

Allow to pass java object via rexBuilder.makeLiteral()

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • 1.0.0-incubating
    • None
    • None

    Description

      Motivation: Rex is simpler that linq4j.

      For instance,
      1) Sometimes it is easier to create a ProjectRel rather than lower the expression to low-level linq4j
      2) XXXToEnumerableRule are easier to accomplish via TableFunctionScan. This allows to express the call via Rex and skip linq4j completely.

      For example: https://github.com/vlsi/mat-calcite-plugin/blob/master/MatCalcitePlugin/src/com/github/vlsi/mat/optiq/rules/InstanceAccessByClassIdRule.java#L43

      The problem is to pass non-literal java object to enumerable/interpreter conventions.

      For enumerable the implementation can use stash. For interpreter it can use the value as is, etc.

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              vladimirsitnikov Vladimir Sitnikov
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated: