In fixing https://issues.apache.org/jira/browse/CALCITE-1327 
<https://issues.apache.org/jira/browse/CALCITE-1327> we just didn’t add those 2 
parameters to SqlUserDefinedAggFunction’s constructor. Feel free to add them. 
Of course you’ll need to ensure backwards compatibility and to write some tests.

> On May 8, 2017, at 4:07 AM, jincheng sun <[email protected]> wrote:
> 
> Hi Julian,
>   I have a question that need your help. The problem is described below:
>   org.apache.calcite.sql.validate.SqlUserDefinedAggFunction calls the 
> constructor of SqlAggFunction:
> 
> Protected SqlAggFunction (
>        String name,
>        SqlIdentifier sqlIdentifier,
>        SqlKind kind,
>        SqlReturnTypeInference returnTypeInference,
>        SqlOperandTypeInference operandTypeInference,
>        SqlOperandTypeChecker operandTypeChecker,
>        SqlFunctionCategory funcType,
>        Boolean requiresOrder,
>        Boolean requiresOver) 
> 
> The requiresOrder = false, requiresOver = false. as follow:
> 
> Public SqlUserDefinedAggFunction (SqlIdentifier opName,
>        SqlReturnTypeInference returnTypeInference,
>        SqlOperandTypeInference operandTypeInference,
>        SqlOperandTypeChecker operandTypeChecker, AggregateFunction function) {
>      Super (Util.last (opName.names), opName, SqlKind.OTHER_FUNCTION,
>          ReturnTypeInference, operandTypeInference, operandTypeChecker,
>          SqlFunctionCategory.USER_DEFINED_FUNCTION, false, false);
>      This.function = function;
>    } 
> 
> I appreciated If you can tell me why the user can not set `requiresOrder` and 
> `requiresOver`  in the `SqlUserDefinedAggFunction` ? 
> 
> Best,
> SunJincheng

Reply via email to