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

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

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

    https://github.com/apache/flink/pull/6103#discussion_r192558687
  
    --- Diff: 
flink-runtime/src/main/java/org/apache/flink/runtime/deployment/InputChannelDeploymentDescriptor.java
 ---
    @@ -103,9 +103,7 @@ public String toString() {
                        // The producing task needs to be RUNNING or already 
FINISHED
                        if (consumedPartition.isConsumable() && producerSlot != 
null &&
                                        (producerState == 
ExecutionState.RUNNING ||
    -                                           producerState == 
ExecutionState.FINISHED ||
    -                                           producerState == 
ExecutionState.SCHEDULED ||
    -                                           producerState == 
ExecutionState.DEPLOYING)) {
    --- End diff --
    
    Yes, I would say that we tackle this problem after we have removed the 
legacy code. For the moment, there is a work around to set the max backoff time 
higher for the data connections.


> Tasks can fail with PartitionNotFoundException if consumer deployment takes 
> too long
> ------------------------------------------------------------------------------------
>
>                 Key: FLINK-9413
>                 URL: https://issues.apache.org/jira/browse/FLINK-9413
>             Project: Flink
>          Issue Type: Bug
>          Components: Distributed Coordination
>    Affects Versions: 1.4.0, 1.5.0, 1.6.0
>            Reporter: Till Rohrmann
>            Assignee: mingleizhang
>            Priority: Critical
>
> {{Tasks}} can fail with a {{PartitionNotFoundException}} if the deployment of 
> the producer takes too long. More specifically, if it takes longer than the 
> {{taskmanager.network.request-backoff.max}}, then the {{Task}} will give up 
> and fail.
> The problem is that we calculate the {{InputGateDeploymentDescriptor}} for a 
> consuming task once the producer has been assigned a slot but we do not wait 
> until it is actually running. The problem should be fixed if we wait until 
> the task is in state {{RUNNING}} before assigning the result partition to the 
> consumer.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to