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

haishui commented on FLINK-32496:
---------------------------------

Hi [~fanrui], I have not yet found that this idle issue leads to other issues. 
In my previous understanding, idle was meant to prevent channels without data 
from blocking the increase of the watermark, while the watermark from idle 
channel can be involved in the calculation of the downstream watermark when 
idle is caused by alignment, which is why I have the question of whether this 
is a bug or not. 

> Sources with idleness and alignment always wait for alignment when part of 
> multiple sources is idle
> ---------------------------------------------------------------------------------------------------
>
>                 Key: FLINK-32496
>                 URL: https://issues.apache.org/jira/browse/FLINK-32496
>             Project: Flink
>          Issue Type: Bug
>          Components: API / DataStream
>    Affects Versions: 1.16.2, 1.17.1
>            Reporter: haishui
>            Assignee: Rui Fan
>            Priority: Major
>              Labels: pull-request-available
>
> Sources with idleness and alignment always wait for alignment when part of 
> multiple sources is idle.
> *Root cause:*
> In 
> [SourceOperator|https://github.com/apache/flink/blob/master/flink-streaming-java/src/main/java/org/apache/flink/streaming/api/operators/SourceOperator.java],
>  `lastEmittedWatermark` is Long.MAX_VALUE if a source is idle.
> When other source is active, the `currentMaxDesiredWatermark` is less then 
> Long.MAX_VALUE.
> So the `shouldWaitForAlignment` method is always true for idle sources.
>  
> What's more, the source will become idle if a source wait for alignment for a 
> long time, which also should be considered.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to