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

Zhen Chen updated CALCITE-7350:
-------------------------------
    Description: 
{{The method definition of TopDownGeneralDecorrelator is incorrect. The method}}

{{_public RelNode unnestInternal(RelNode other)_}}

{{should perhaps be}}

{{{}_public RelNode unnestInternal(RelNode other, boolean 
allowEmptyOutputFromRewrite)_{}}}.

 
{code:java}
@Test void testUnnestInternalMissingParameter() {
  final String sql = "SELECT empno FROM emp e"
      + " WHERE sal > some(SELECT avg(sal) over (partition by deptno) from 
emp_b b"
      + " where b.deptno = e.deptno)";

  sql(sql)
      .withRule(
          CoreRules.FILTER_SUB_QUERY_TO_MARK_CORRELATE,
          CoreRules.PROJECT_TO_LOGICAL_PROJECT_AND_WINDOW)
      .withLateDecorrelate(true)
      .withTopDownGeneralDecorrelate(true)
      .check();
} {code}
Running this case will throw following:

Method not found: unnestInternal([interface org.apache.calcite.rel.RelNode, 
boolean])
java.lang.IllegalArgumentException: Method not found: unnestInternal([interface 
org.apache.calcite.rel

  was:
{{The method definition of TopDownGeneralDecorrelator is incorrect. The method}}

{{_public RelNode unnestInternal(RelNode other)_}}

{{should perhaps be}}

{{{}_public RelNode unnestInternal(RelNode other, boolean 
allowEmptyOutputFromRewrite)_{}}}.


> Missing allowEmptyOutputFromRewrite parameter in 
> TopDownGeneralDecorrelator.unnestInternal
> ------------------------------------------------------------------------------------------
>
>                 Key: CALCITE-7350
>                 URL: https://issues.apache.org/jira/browse/CALCITE-7350
>             Project: Calcite
>          Issue Type: Improvement
>            Reporter: Zhen Chen
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 1.42.0
>
>
> {{The method definition of TopDownGeneralDecorrelator is incorrect. The 
> method}}
> {{_public RelNode unnestInternal(RelNode other)_}}
> {{should perhaps be}}
> {{{}_public RelNode unnestInternal(RelNode other, boolean 
> allowEmptyOutputFromRewrite)_{}}}.
>  
> {code:java}
> @Test void testUnnestInternalMissingParameter() {
>   final String sql = "SELECT empno FROM emp e"
>       + " WHERE sal > some(SELECT avg(sal) over (partition by deptno) from 
> emp_b b"
>       + " where b.deptno = e.deptno)";
>   sql(sql)
>       .withRule(
>           CoreRules.FILTER_SUB_QUERY_TO_MARK_CORRELATE,
>           CoreRules.PROJECT_TO_LOGICAL_PROJECT_AND_WINDOW)
>       .withLateDecorrelate(true)
>       .withTopDownGeneralDecorrelate(true)
>       .check();
> } {code}
> Running this case will throw following:
> Method not found: unnestInternal([interface org.apache.calcite.rel.RelNode, 
> boolean])
> java.lang.IllegalArgumentException: Method not found: 
> unnestInternal([interface org.apache.calcite.rel



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

Reply via email to