You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "ASF GitHub Bot (JIRA)" <ji...@apache.org> on 2018/07/11 11:19:01 UTC
[jira] [Commented] (FLINK-9413) Tasks can fail with
PartitionNotFoundException if consumer deployment takes too long
[ https://issues.apache.org/jira/browse/FLINK-9413?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16539921#comment-16539921 ]
ASF GitHub Bot commented on FLINK-9413:
---------------------------------------
Github user RalphSu commented on the issue:
https://github.com/apache/flink/pull/6103
okey...
I encounter issue when submit jobs, stack as below, looks the same with this one. Is this a regression, or are we thinking the fix will break existing code?
org.apache.flink.runtime.io.network.partition.PartitionNotFoundException: Partition 1d986178ce506d4e3e71c4f6f61439b7@36897daa4a60b37dcae0973ba48a868b not found.
at org.apache.flink.runtime.io.network.partition.consumer.RemoteInputChannel.failPartitionRequest(RemoteInputChannel.java:270)
at org.apache.flink.runtime.io.network.partition.consumer.RemoteInputChannel.retriggerSubpartitionRequest(RemoteInputChannel.java:172)
at org.apache.flink.runtime.io.network.partition.consumer.SingleInputGate.retriggerPartitionRequest(SingleInputGate.java:392)
at org.apache.flink.runtime.taskmanager.Task.onPartitionStateUpdate(Task.java:1300)
at org.apache.flink.runtime.taskmanager.Task.lambda$triggerPartitionProducerStateCheck$0(Task.java:1139)
at java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:760)
at java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:736)
at java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:442)
at akka.dispatch.TaskInvocation.run(AbstractDispatcher.scala:39)
at akka.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec(AbstractDispatcher.scala:415)
at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)
> 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: zhangminglei
> Priority: Critical
> Labels: pull-request-available
>
> {{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)