You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@calcite.apache.org by da...@apache.org on 2019/06/10 08:37:20 UTC
[calcite] branch master updated: Following [CALCITE-2744] Remove
usage of deprecated api in MockSqlOperatorTable
This is an automated email from the ASF dual-hosted git repository.
danny0405 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/calcite.git
The following commit(s) were added to refs/heads/master by this push:
new 340e21a Following [CALCITE-2744] Remove usage of deprecated api in MockSqlOperatorTable
340e21a is described below
commit 340e21a6a93e0766acf3fa292c4ecd86d5f5f8ef
Author: yuzhao.cyz <yu...@alibaba-inc.com>
AuthorDate: Mon Jun 10 10:25:24 2019 +0800
Following [CALCITE-2744] Remove usage of deprecated api in MockSqlOperatorTable
---
.../java/org/apache/calcite/test/MockSqlOperatorTable.java | 10 ++++++----
.../test/java/org/apache/calcite/test/RelOptRulesTest.java | 8 ++++----
.../resources/org/apache/calcite/test/RelOptRulesTest.xml | 12 ++++++------
3 files changed, 16 insertions(+), 14 deletions(-)
diff --git a/core/src/test/java/org/apache/calcite/test/MockSqlOperatorTable.java b/core/src/test/java/org/apache/calcite/test/MockSqlOperatorTable.java
index c7ec801..13c8253 100644
--- a/core/src/test/java/org/apache/calcite/test/MockSqlOperatorTable.java
+++ b/core/src/test/java/org/apache/calcite/test/MockSqlOperatorTable.java
@@ -29,6 +29,7 @@ import org.apache.calcite.sql.SqlOperatorTable;
import org.apache.calcite.sql.parser.SqlParserPos;
import org.apache.calcite.sql.type.OperandTypes;
import org.apache.calcite.sql.type.ReturnTypes;
+import org.apache.calcite.sql.type.SqlTypeFamily;
import org.apache.calcite.sql.type.SqlTypeName;
import org.apache.calcite.sql.util.ChainedSqlOperatorTable;
import org.apache.calcite.sql.util.ListSqlOperatorTable;
@@ -130,12 +131,13 @@ public class MockSqlOperatorTable extends ChainedSqlOperatorTable {
}
}
- /** "MY_AVG" user-defined aggregate function, with two arguments. */
+ /** "MYAGG" user-defined aggregate function. This agg function accept two numeric arguments
+ * in order to reproduce the throws of CALCITE-2744. */
public static class MyAvgAggFunction extends SqlAggFunction {
public MyAvgAggFunction() {
- super("MY_AVG", null, SqlKind.AVG, ReturnTypes.AVG_AGG_FUNCTION,
- null, OperandTypes.NUMERIC_NUMERIC, SqlFunctionCategory.NUMERIC,
- false, false, Optionality.FORBIDDEN);
+ super("MYAGG", null, SqlKind.AVG, ReturnTypes.AVG_AGG_FUNCTION,
+ null, OperandTypes.family(SqlTypeFamily.NUMERIC, SqlTypeFamily.NUMERIC),
+ SqlFunctionCategory.NUMERIC, false, false, Optionality.FORBIDDEN);
}
@Override public boolean isDeterministic() {
diff --git a/core/src/test/java/org/apache/calcite/test/RelOptRulesTest.java b/core/src/test/java/org/apache/calcite/test/RelOptRulesTest.java
index a32a084..bc3ca18 100644
--- a/core/src/test/java/org/apache/calcite/test/RelOptRulesTest.java
+++ b/core/src/test/java/org/apache/calcite/test/RelOptRulesTest.java
@@ -5296,8 +5296,8 @@ public class RelOptRulesTest extends RelOptTestBase {
/** Test case for CALCITE-2744 for aggregate decorrelate with multi-param agg call
* but without group key. */
@Test public void testDecorrelateAggWithMultiParamsAggCall() {
- final String sql = "SELECT * FROM (SELECT MY_AVG(sal, 1) AS c FROM emp) as m,\n"
- + " LATERAL TABLE(ramp(m.c)) AS T(s)";
+ final String sql = "SELECT * FROM (SELECT MYAGG(sal, 1) AS c FROM emp) as m,\n"
+ + " LATERAL TABLE(ramp(m.c)) AS T(s)";
sql(sql)
.withLateDecorrelation(true)
.withTrim(true)
@@ -5306,10 +5306,10 @@ public class RelOptRulesTest extends RelOptTestBase {
}
/** Same as {@link #testDecorrelateAggWithMultiParamsAggCall}
- * but with constant grouping key. */
+ * but with a constant group key. */
@Test public void testDecorrelateAggWithMultiParamsAggCall2() {
final String sql = "SELECT * FROM "
- + "(SELECT MY_AVG(sal, 1) AS c FROM emp group by empno, 'abc') as m,\n"
+ + "(SELECT MYAGG(sal, 1) AS c FROM emp group by empno, 'abc') as m,\n"
+ " LATERAL TABLE(ramp(m.c)) AS T(s)";
sql(sql)
.withLateDecorrelation(true)
diff --git a/core/src/test/resources/org/apache/calcite/test/RelOptRulesTest.xml b/core/src/test/resources/org/apache/calcite/test/RelOptRulesTest.xml
index eeb224f..0d78880 100644
--- a/core/src/test/resources/org/apache/calcite/test/RelOptRulesTest.xml
+++ b/core/src/test/resources/org/apache/calcite/test/RelOptRulesTest.xml
@@ -2732,14 +2732,14 @@ LogicalProject(EMPNO=[$0], ENAME=[$1], JOB=[$2], MGR=[$3], HIREDATE=[$4], SAL=[$
</TestCase>
<TestCase name="testDecorrelateAggWithMultiParamsAggCall">
<Resource name="sql">
- <![CDATA[SELECT * FROM (SELECT MY_AVG(sal, 1) AS c FROM emp) as m,
+ <![CDATA[SELECT * FROM (SELECT MYAGG(sal, 1) AS c FROM emp) as m,
LATERAL TABLE(ramp(m.c)) AS T(s)]]>
</Resource>
<Resource name="planBefore">
<![CDATA[
LogicalProject(C=[$0], S=[$1])
LogicalCorrelate(correlation=[$cor0], joinType=[inner], requiredColumns=[{0}])
- LogicalAggregate(group=[{}], C=[MY_AVG($0, $1)])
+ LogicalAggregate(group=[{}], C=[MYAGG($0, $1)])
LogicalProject(SAL=[$5], $f1=[1])
LogicalTableScan(table=[[CATALOG, SALES, EMP]])
LogicalTableFunctionScan(invocation=[RAMP($cor0.C)], rowType=[RecordType(INTEGER I)])
@@ -2749,7 +2749,7 @@ LogicalProject(C=[$0], S=[$1])
<![CDATA[
LogicalProject(C=[$0], S=[$1])
LogicalCorrelate(correlation=[$cor0], joinType=[inner], requiredColumns=[{0}])
- LogicalAggregate(group=[{}], C=[MY_AVG($0, $1)])
+ LogicalAggregate(group=[{}], C=[MYAGG($0, $1)])
LogicalProject(SAL=[$5], $f1=[1])
LogicalTableScan(table=[[CATALOG, SALES, EMP]])
LogicalTableFunctionScan(invocation=[RAMP($cor0.C)], rowType=[RecordType(INTEGER I)])
@@ -2758,7 +2758,7 @@ LogicalProject(C=[$0], S=[$1])
</TestCase>
<TestCase name="testDecorrelateAggWithMultiParamsAggCall2">
<Resource name="sql">
- <![CDATA[SELECT * FROM (SELECT MY_AVG(sal, 1) AS c FROM emp group by empno, 'abc') as m,
+ <![CDATA[SELECT * FROM (SELECT MYAGG(sal, 1) AS c FROM emp group by empno, 'abc') as m,
LATERAL TABLE(ramp(m.c)) AS T(s)]]>
</Resource>
<Resource name="planBefore">
@@ -2766,7 +2766,7 @@ LogicalProject(C=[$0], S=[$1])
LogicalProject(C=[$0], S=[$1])
LogicalCorrelate(correlation=[$cor0], joinType=[inner], requiredColumns=[{0}])
LogicalProject(C=[$2])
- LogicalAggregate(group=[{0, 1}], C=[MY_AVG($2, $3)])
+ LogicalAggregate(group=[{0, 1}], C=[MYAGG($2, $3)])
LogicalProject(EMPNO=[$0], $f1=['abc'], SAL=[$5], $f3=[1])
LogicalTableScan(table=[[CATALOG, SALES, EMP]])
LogicalTableFunctionScan(invocation=[RAMP($cor0.C)], rowType=[RecordType(INTEGER I)])
@@ -2777,7 +2777,7 @@ LogicalProject(C=[$0], S=[$1])
LogicalProject(C=[$0], S=[$1])
LogicalCorrelate(correlation=[$cor0], joinType=[inner], requiredColumns=[{0}])
LogicalProject(C=[$2])
- LogicalAggregate(group=[{0, 1}], C=[MY_AVG($2, $3)])
+ LogicalAggregate(group=[{0, 1}], C=[MYAGG($2, $3)])
LogicalProject(EMPNO=[$0], $f1=['abc'], SAL=[$5], $f3=[1])
LogicalTableScan(table=[[CATALOG, SALES, EMP]])
LogicalTableFunctionScan(invocation=[RAMP($cor0.C)], rowType=[RecordType(INTEGER I)])