[
https://issues.apache.org/jira/browse/FLINK-5773?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15867818#comment-15867818
]
ASF GitHub Bot commented on FLINK-5773:
---------------------------------------
GitHub user tillrohrmann opened a pull request:
https://github.com/apache/flink/pull/3321
[FLINK-5773] Use akka.actor.Status.Failure class to send failures via
AskSupport
Akka's AskSupport trait requires that failures are wrapped in a
akka.actor.Status.Failure
to be recognized. Internally the trait will unwrap the failure and wrap it
in a
scala.util.Failure instance. However, it does not recognize the scala
Failure when given
to the AskSupport trait. As a consequence it would wrap scala.util.Failure
in a
scala.util.Success instance.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/tillrohrmann/flink FLINK-5773
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/flink/pull/3321.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #3321
----
commit e7e0431503f53fe9b8f36971a18d07ab0d16faf4
Author: Till Rohrmann <[email protected]>
Date: 2017-02-15T13:16:26Z
[FLINK-5773] Use akka.actor.Status.Failure class to send failures via
AskSupport
Akka's AskSupport trait requires that failures are wrapped in a
akka.actor.Status.Failure
to be recognized. Internally the trait will unwrap the failure and wrap it
in a
scala.util.Failure instance. However, it does not recognize the scala
Failure when given
to the AskSupport trait. As a consequence it would wrap scala.util.Failure
in a
scala.util.Success instance.
----
> Cannot cast scala.util.Failure to
> org.apache.flink.runtime.messages.Acknowledge
> -------------------------------------------------------------------------------
>
> Key: FLINK-5773
> URL: https://issues.apache.org/jira/browse/FLINK-5773
> Project: Flink
> Issue Type: Bug
> Components: Distributed Coordination
> Affects Versions: 1.2.0, 1.3.0
> Reporter: Colin Breame
> Assignee: Till Rohrmann
> Fix For: 1.3.0, 1.2.1
>
>
> The exception below happens when I set the
> StreamExecutionEnvironment.setMaxParallelism() to anything less than 4.
> Let me know if you need more information.
> {code}
> Caused by: java.lang.ClassCastException: Cannot cast scala.util.Failure to
> org.apache.flink.runtime.messages.Acknowledge
> at java.lang.Class.cast(Class.java:3369)
> at scala.concurrent.Future$$anonfun$mapTo$1.apply(Future.scala:405)
> at scala.util.Success$$anonfun$map$1.apply(Try.scala:206)
> at scala.util.Try$.apply(Try.scala:161)
> at scala.util.Success.map(Try.scala:206)
> at scala.concurrent.Future$$anonfun$map$1.apply(Future.scala:235)
> at scala.concurrent.Future$$anonfun$map$1.apply(Future.scala:235)
> at scala.concurrent.impl.CallbackRunnable.run(Promise.scala:32)
> at
> scala.concurrent.Future$InternalCallbackExecutor$Batch$$anonfun$run$1.processBatch$1(Future.scala:643)
> at
> scala.concurrent.Future$InternalCallbackExecutor$Batch$$anonfun$run$1.apply$mcV$sp(Future.scala:658)
> at
> scala.concurrent.Future$InternalCallbackExecutor$Batch$$anonfun$run$1.apply(Future.scala:635)
> at
> scala.concurrent.Future$InternalCallbackExecutor$Batch$$anonfun$run$1.apply(Future.scala:635)
> at
> scala.concurrent.BlockContext$.withBlockContext(BlockContext.scala:72)
> at
> scala.concurrent.Future$InternalCallbackExecutor$Batch.run(Future.scala:634)
> at
> scala.concurrent.Future$InternalCallbackExecutor$.scala$concurrent$Future$InternalCallbackExecutor$$unbatchedExecute(Future.scala:694)
> at
> scala.concurrent.Future$InternalCallbackExecutor$.execute(Future.scala:685)
> at
> scala.concurrent.impl.CallbackRunnable.executeWithValue(Promise.scala:40)
> at
> scala.concurrent.impl.Promise$DefaultPromise.tryComplete(Promise.scala:248)
> at akka.pattern.PromiseActorRef.$bang(AskSupport.scala:266)
> at
> org.apache.flink.runtime.taskmanager.TaskManager.submitTask(TaskManager.scala:1206)
> at
> org.apache.flink.runtime.taskmanager.TaskManager.org$apache$flink$runtime$taskmanager$TaskManager$$handleTaskMessage(TaskManager.scala:458)
> at
> org.apache.flink.runtime.taskmanager.TaskManager$$anonfun$handleMessage$1.applyOrElse(TaskManager.scala:280)
> at
> scala.runtime.AbstractPartialFunction$mcVL$sp.apply$mcVL$sp(AbstractPartialFunction.scala:33)
> at
> scala.runtime.AbstractPartialFunction$mcVL$sp.apply(AbstractPartialFunction.scala:33)
> at
> scala.runtime.AbstractPartialFunction$mcVL$sp.apply(AbstractPartialFunction.scala:25)
> at
> org.apache.flink.runtime.LeaderSessionMessageFilter$$anonfun$receive$1.applyOrElse(LeaderSessionMessageFilter.scala:36)
> at
> scala.runtime.AbstractPartialFunction$mcVL$sp.apply$mcVL$sp(AbstractPartialFunction.scala:33)
> at
> scala.runtime.AbstractPartialFunction$mcVL$sp.apply(AbstractPartialFunction.scala:33)
> at
> scala.runtime.AbstractPartialFunction$mcVL$sp.apply(AbstractPartialFunction.scala:25)
> at
> org.apache.flink.runtime.LogMessages$$anon$1.apply(LogMessages.scala:33)
> at
> org.apache.flink.runtime.LogMessages$$anon$1.apply(LogMessages.scala:28)
> at scala.PartialFunction$class.applyOrElse(PartialFunction.scala:118)
> at
> org.apache.flink.runtime.LogMessages$$anon$1.applyOrElse(LogMessages.scala:28)
> at akka.actor.Actor$class.aroundReceive(Actor.scala:467)
> at
> org.apache.flink.runtime.taskmanager.TaskManager.aroundReceive(TaskManager.scala:122)
> at akka.actor.ActorCell.receiveMessage(ActorCell.scala:516)
> at akka.actor.ActorCell.invoke(ActorCell.scala:487)
> at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:238)
> at akka.dispatch.Mailbox.run(Mailbox.scala:220)
> ... 5 more
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)