Adding a cast around the null literal makes sense. I would use “rexBuilder.makeCast(type,
constantNull())” rather than “rexBuilder.makeNullLiteral(type.getSqlTypeName())” because
there’s a chance that the type needs precision & scale.
Can you please create a Calcite jira case and submit a pull request?
And by the way, I think I see similar patterns in AggregateExpandDistinctAggregatesRule, AggregateValuesRule
and even RexBuilder.makeOver.
Julian
> On Feb 2, 2017, at 12:57 AM, Anton Mushin <Anton_Mushin@epam.com> wrote:
>
> Hello community,
> I have worked for support standard deviation/variance functions in Flink SQL [1] and
I got exception " Type NULL is not supported. Null values must have a supported type.".
> I started search root cause and found what problem come up from AggregateReduceFunctionsRule[2].
@twalthr confirmed it after[3].
>
> Now I have been used WA - the copy AggregateReduceFunctionsRule inside Flink with changes.
> Could we resolve the problem some way?
> I look forward to your reply.
>
> [1] https://issues.apache.org/jira/browse/FLINK-4604#
> [2] https://issues.apache.org/jira/browse/FLINK-4604?focusedCommentId=15615280&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-15615280
> [3] https://issues.apache.org/jira/browse/FLINK-4604?focusedCommentId=15667697&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-15667697
>
> Regards,
> Anton Mushin
>
|