[ https://issues.apache.org/jira/browse/FLINK-5710?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15856358#comment-15856358 ]
Fabian Hueske commented on FLINK-5710: -------------------------------------- The idea is to kind of apply pattern matching for certain expressions such as {{GROUP BY FLOOR(procTime() TO HOURS)}}. The challenge is that this expression is spread across several LogicalRel nodes. The expression {{FLOOR(procTime() TO HOURS)}} will be moved into a {{LogicalProject}} (or {{LogicalCalc}}) to create a new attribute. A following {{LogicalAggregate}} will then use that attribute as a grouping column. Once we detect such a pattern, we have to rewrite the plan and replace the {{LogicalAggregate}} and parts of the {{LogicalProject}} by a {{LogicalWindowAggregate}}. The {{LogicalWindowAggregate}} includes a window definition. Depending on which marker function is used ({{rowtime}} or {{proctime}}) the window definition is either for a processing or an event time window. After the translation, the function is no longer available. With this approach, we can only translate very specific queries. However, I don't think we can easily provide a generic translation for SQL window queries. > Add ProcTime() function to indicate StreamSQL > --------------------------------------------- > > Key: FLINK-5710 > URL: https://issues.apache.org/jira/browse/FLINK-5710 > Project: Flink > Issue Type: New Feature > Components: DataStream API > Reporter: Stefano Bortoli > Assignee: Stefano Bortoli > Priority: Minor > > procTime() is a parameterless scalar function that just indicates processing > time mode -- This message was sent by Atlassian JIRA (v6.3.15#6346)