Ian Bertolacci created CALCITE-7237:
---------------------------------------

             Summary: RelOptRuleOperand Assertion error with UNORDERED child 
policy when more than 1 child
                 Key: CALCITE-7237
                 URL: https://issues.apache.org/jira/browse/CALCITE-7237
             Project: Calcite
          Issue Type: Bug
            Reporter: Ian Bertolacci


[In RelOptRuleOperand constructor, there is an assertion that if the policy is 
UNORDERED, there must be exactly one 
child.|https://github.com/apache/calcite/blob/main/core/src/main/java/org/apache/calcite/plan/RelOptRuleOperand.java#L124-L125]

However, there are many paths to this condition which claim (both literally in 
comments, or through accepting multiple operands) that there *can* be multiple 
children.
- 
[RelRule.OperandDetailBuilder.unorderedInputs|https://calcite.apache.org/javadocAggregate/org/apache/calcite/plan/RelRule.OperandDetailBuilder.html#unorderedInputs(org.apache.calcite.plan.RelRule.OperandTransform...)]
- 
[RelRule.OperandDetailBuilderImpl.unorderedInputs|https://github.com/apache/calcite/blob/92a1028d65efc3005eb22c3def97adefd9e8f2fc/core/src/main/java/org/apache/calcite/plan/RelRule.java#L319-L324]
- 
[HepPlanner|https://github.com/apache/calcite/blob/main/core/src/main/java/org/apache/calcite/plan/hep/HepPlanner.java#L616]

It seems like theres a contradiction here.




--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to