flink-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF GitHub Bot (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (FLINK-6930) Selecting window start / end on row-based Tumble/Slide window causes NPE
Date Fri, 16 Jun 2017 08:22:00 GMT

    [ https://issues.apache.org/jira/browse/FLINK-6930?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16051579#comment-16051579
] 

ASF GitHub Bot commented on FLINK-6930:
---------------------------------------

Github user fhueske commented on a diff in the pull request:

    https://github.com/apache/flink/pull/4133#discussion_r122388804
  
    --- Diff: flink-libraries/flink-table/src/main/scala/org/apache/flink/table/plan/logical/operators.scala
---
    @@ -652,6 +653,21 @@ case class WindowAggregate(
           case ValidationSuccess => // ok
         }
     
    +    // validate property
    +    if (propertyExpressions.nonEmpty) {
    +      resolvedWindowAggregate.window match {
    +        case TumblingGroupWindow(_, _, size) if isRowCountLiteral(size) =>
    +          failValidation("Window start and Window end are not accessed " +
    +                           "on row-counts Tumbling window.")
    --- End diff --
    
    How about `"Window start and Window end cannot be selected for a row-count Tumbing window."`?


> Selecting window start / end on row-based Tumble/Slide window causes NPE
> ------------------------------------------------------------------------
>
>                 Key: FLINK-6930
>                 URL: https://issues.apache.org/jira/browse/FLINK-6930
>             Project: Flink
>          Issue Type: Bug
>          Components: Table API & SQL
>    Affects Versions: 1.3.0, 1.4.0
>            Reporter: Fabian Hueske
>            Assignee: Jark Wu
>
> Selecting the start and end properties of a row-based window causes a NullPointerException.
> The following program:
> {code}
> val windowedTable = table
>       .window(Tumble over 2.rows on 'proctime as 'w)
>       .groupBy('w, 'string)
>       .select('string as 'n, 'int.count as 'cnt, 'w.start as 's, 'w.end as 'e)
> {code}
> causes 
> {code}
> Caused by: java.lang.NullPointerException
> 	at org.apache.calcite.runtime.SqlFunctions.toLong(SqlFunctions.java:1556)
> 	at org.apache.calcite.runtime.SqlFunctions.toLong(SqlFunctions.java:1551)
> 	at DataStreamCalcRule$40.processElement(Unknown Source)
> 	at org.apache.flink.table.runtime.CRowProcessRunner.processElement(CRowProcessRunner.scala:67)
> 	at org.apache.flink.table.runtime.CRowProcessRunner.processElement(CRowProcessRunner.scala:35)
> 	at org.apache.flink.streaming.api.operators.ProcessOperator.processElement(ProcessOperator.java:66)
> 	at org.apache.flink.streaming.runtime.tasks.OperatorChain$CopyingChainingOutput.pushToOperator(OperatorChain.java:528)
> 	at org.apache.flink.streaming.runtime.tasks.OperatorChain$CopyingChainingOutput.collect(OperatorChain.java:503)
> 	at org.apache.flink.streaming.runtime.tasks.OperatorChain$CopyingChainingOutput.collect(OperatorChain.java:483)
> 	at org.apache.flink.streaming.api.operators.AbstractStreamOperator$CountingOutput.collect(AbstractStreamOperator.java:890)
> 	at org.apache.flink.streaming.api.operators.AbstractStreamOperator$CountingOutput.collect(AbstractStreamOperator.java:868)
> 	at org.apache.flink.streaming.api.operators.TimestampedCollector.collect(TimestampedCollector.java:51)
> 	at org.apache.flink.table.runtime.aggregate.IncrementalAggregateWindowFunction.apply(IncrementalAggregateWindowFunction.scala:75)
> 	at org.apache.flink.table.runtime.aggregate.IncrementalAggregateWindowFunction.apply(IncrementalAggregateWindowFunction.scala:37)
> 	at org.apache.flink.streaming.runtime.operators.windowing.functions.InternalSingleValueWindowFunction.process(InternalSingleValueWindowFunction.java:46)
> 	at org.apache.flink.streaming.runtime.operators.windowing.WindowOperator.emitWindowContents(WindowOperator.java:599)
> 	at org.apache.flink.streaming.runtime.operators.windowing.WindowOperator.processElement(WindowOperator.java:456)
> 	at org.apache.flink.streaming.runtime.io.StreamInputProcessor.processInput(StreamInputProcessor.java:207)
> 	at org.apache.flink.streaming.runtime.tasks.OneInputStreamTask.run(OneInputStreamTask.java:69)
> 	at org.apache.flink.streaming.runtime.tasks.StreamTask.invoke(StreamTask.java:265)
> 	at org.apache.flink.runtime.taskmanager.Task.run(Task.java:702)
> 	at java.lang.Thread.run(Thread.java:745)
> {code}
> We should validate that the start and end window properties are not accessed if the window
is defined on row-counts.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Mime
View raw message