[ 
https://issues.apache.org/jira/browse/CALCITE-3773?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ruben Q L updated CALCITE-3773:
-------------------------------
    Description: 
The public {{EnumerableMergeJoin::create}} method takes a {{RexLiteral}} 
condition as parameter:
{code}
  public static EnumerableMergeJoin create(
      RelNode left, RelNode right,
      RexLiteral condition,  // here!
      ImmutableIntList leftKeys, ImmutableIntList rightKeys, JoinRelType 
joinType) {
    ...
  }
{code}

However, in the actual (package-private) constructor (and in the parent 
{{Join}} class), the condition is defined as a {{RexNode}}:
{code}
  EnumerableMergeJoin(
      RelOptCluster cluster,
      RelTraitSet traits,
      RelNode left,
      RelNode right,
      RexNode condition,  // here!
      Set<CorrelationId> variablesSet,
      JoinRelType joinType) {
    ...
  }
{code}

Therefore, the {{create}} method parameter must be fixed.

  was:
The public {{EnumerableMergeJoin::create}} method takes a {{RexLiteral}} 
condition as parameter:
{code}
  public static EnumerableMergeJoin create(
      RelNode left, RelNode right,
      RexLiteral condition,  // here!
      ImmutableIntList leftKeys, ImmutableIntList rightKeys, JoinRelType 
joinType) {
    ...
  }
{code}

However, in the actual (package-private) constructor, the condition is a 
{{RexNode}}:
{code}
  EnumerableMergeJoin(
      RelOptCluster cluster,
      RelTraitSet traits,
      RelNode left,
      RelNode right,
      RexNode condition,  // here!
      Set<CorrelationId> variablesSet,
      JoinRelType joinType) {
    ...
  }
{code}

Therefore, the {{create}} method parameter must be fixed.


> Wrong parameter in EnumerableMergeJoin::create method
> -----------------------------------------------------
>
>                 Key: CALCITE-3773
>                 URL: https://issues.apache.org/jira/browse/CALCITE-3773
>             Project: Calcite
>          Issue Type: Bug
>          Components: core
>    Affects Versions: 1.21.0
>            Reporter: Ruben Q L
>            Assignee: Ruben Q L
>            Priority: Trivial
>             Fix For: 1.22.0
>
>
> The public {{EnumerableMergeJoin::create}} method takes a {{RexLiteral}} 
> condition as parameter:
> {code}
>   public static EnumerableMergeJoin create(
>       RelNode left, RelNode right,
>       RexLiteral condition,  // here!
>       ImmutableIntList leftKeys, ImmutableIntList rightKeys, JoinRelType 
> joinType) {
>     ...
>   }
> {code}
> However, in the actual (package-private) constructor (and in the parent 
> {{Join}} class), the condition is defined as a {{RexNode}}:
> {code}
>   EnumerableMergeJoin(
>       RelOptCluster cluster,
>       RelTraitSet traits,
>       RelNode left,
>       RelNode right,
>       RexNode condition,  // here!
>       Set<CorrelationId> variablesSet,
>       JoinRelType joinType) {
>     ...
>   }
> {code}
> Therefore, the {{create}} method parameter must be fixed.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to