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

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

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

    https://github.com/apache/flink/pull/2350#discussion_r75298028
  
    --- Diff: 
flink-streaming-java/src/main/java/org/apache/flink/streaming/api/operators/StreamSource.java
 ---
    @@ -146,16 +146,24 @@ void checkAsyncException() {
                private final Output<StreamRecord<T>> output;
                private final StreamRecord<T> reuse;
     
    -           public NonTimestampContext(StreamSource<?, ?> owner, Object 
lockingObject, Output<StreamRecord<T>> output) {
    -                   this.owner = owner;
    +           public NonTimestampContext(AbstractStreamOperator<T> owner, 
Object lockingObject, Output<StreamRecord<T>> output) {
                        this.lockingObject = lockingObject;
                        this.output = output;
                        this.reuse = new StreamRecord<T>(null);
    +
    +                   // if it is a source, then we cast and cache it
    +                   // here so that we do not have to do it in every 
collect(),
    +                   // collectWithTimestamp() and emitWatermark()
    +
    +                   this.owner = (owner instanceof StreamSource) ?
    +                           (StreamSource) owner : null;
    --- End diff --
    
    This looks a bit hacky. How about you add an interface `AsyncException` or 
so, that all classes the `NonTimestampContext` are using can use.


> Fix Streaming File Source Timestamps/Watermarks Handling
> --------------------------------------------------------
>
>                 Key: FLINK-4329
>                 URL: https://issues.apache.org/jira/browse/FLINK-4329
>             Project: Flink
>          Issue Type: Bug
>          Components: Streaming Connectors
>    Affects Versions: 1.1.0
>            Reporter: Aljoscha Krettek
>            Assignee: Kostas Kloudas
>             Fix For: 1.1.1
>
>
> The {{ContinuousFileReaderOperator}} does not correctly deal with watermarks, 
> i.e. they are just passed through. This means that when the 
> {{ContinuousFileMonitoringFunction}} closes and emits a {{Long.MAX_VALUE}} 
> that watermark can "overtake" the records that are to be emitted in the 
> {{ContinuousFileReaderOperator}}. Together with the new "allowed lateness" 
> setting in window operator this can lead to elements being dropped as late.
> Also, {{ContinuousFileReaderOperator}} does not correctly assign ingestion 
> timestamps since it is not technically a source but looks like one to the 
> user.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to