apache / pekko

Build highly concurrent, distributed, and resilient message-driven applications using Java/Scala
https://pekko.apache.org/
Apache License 2.0
1.17k stars 139 forks source link

java.lang.UnsupportedOperationException pekko migration #1325

Closed pro-kaushal closed 3 months ago

pro-kaushal commented 3 months ago

Please use https://github.com/apache/pekko/discussions for questions instead of posting them to the issue tracker.

I'm getting following error after I updated system from play 2.9 to play 3 (pekko)

java.lang.UnsupportedOperationException: null at java.base/java.util.concurrent.CompletableFuture$MinimalStage.isDone(CompletableFuture.java:2926) at scala.jdk.javaapi.FutureConverters$.asScala(FutureConverters.scala:73) at scala.jdk.FutureConverters$CompletionStageOps$.asScala$extension(FutureConverters.scala:41) at play.sockjs.core.j.JavaSockJS.$anonfun$withComponents$1(JavaSockJS.scala:18) at play.sockjs.api.SockJS$$anon$1.apply(SockJS.scala:34) at play.sockjs.core.transports.WebSocket.$anonfun$framed$2(WebSocket.scala:27) at play.api.mvc.WebSocket$.$anonfun$acceptOrResult$1(WebSocket.scala:184) at play.api.mvc.WebSocket$.$anonfun$apply$1(WebSocket.scala:38) at play.core.server.PekkoHttpServer.executeHandler(PekkoHttpServer.scala:403) at play.core.server.PekkoHttpServer.handleRequest(PekkoHttpServer.scala:362) at play.core.server.PekkoHttpServer.$anonfun$createServerBinding$1(PekkoHttpServer.scala:224) at org.apache.pekko.stream.impl.fusing.MapAsyncUnordered$$anon$31.onPush(Ops.scala:1443) at org.apache.pekko.stream.impl.fusing.GraphInterpreter.processPush(GraphInterpreter.scala:555) at org.apache.pekko.stream.impl.fusing.GraphInterpreter.execute(GraphInterpreter.scala:433) at org.apache.pekko.stream.impl.fusing.GraphInterpreterShell.runBatch(ActorGraphInterpreter.scala:662) at org.apache.pekko.stream.impl.fusing.ActorGraphInterpreter$SimpleBoundaryEvent.execute(ActorGraphInterpreter.scala:71) at org.apache.pekko.stream.impl.fusing.ActorGraphInterpreter$SimpleBoundaryEvent.execute$(ActorGraphInterpreter.scala:67) at org.apache.pekko.stream.impl.fusing.ActorGraphInterpreter$BatchingActorInputBoundary$OnNext.execute(ActorGraphInterpreter.scala:114) at org.apache.pekko.stream.impl.fusing.GraphInterpreterShell.processEvent(ActorGraphInterpreter.scala:637) at org.apache.pekko.stream.impl.fusing.ActorGraphInterpreter.org$apache$pekko$stream$impl$fusing$ActorGraphInterpreter$$processEvent(ActorGraphInterpreter.scala:813) at org.apache.pekko.stream.impl.fusing.ActorGraphInterpreter$$anonfun$receive$1.applyOrElse(ActorGraphInterpreter.scala:831) at org.apache.pekko.actor.Actor.aroundReceive(Actor.scala:547) at org.apache.pekko.actor.Actor.aroundReceive$(Actor.scala:545) at org.apache.pekko.stream.impl.fusing.ActorGraphInterpreter.aroundReceive(ActorGraphInterpreter.scala:729) at org.apache.pekko.actor.ActorCell.receiveMessage(ActorCell.scala:590) at org.apache.pekko.actor.ActorCell.invoke(ActorCell.scala:557) at org.apache.pekko.dispatch.Mailbox.processMailbox(Mailbox.scala:280) at org.apache.pekko.dispatch.Mailbox.run(Mailbox.scala:241) at org.apache.pekko.dispatch.Mailbox.exec(Mailbox.scala:253) at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:373) at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1182) at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1655) at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1622) at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:165)

He-Pin commented 3 months ago

please update scala to newer latest version, this is been fixed in scala

pjfanning commented 3 months ago

Pekko is not even in the main part of the stacktrace. Scala and Play are much closer to the failure.

@He-Pin are you suggesting the issue is in scala.jdk.javaapi.FutureConverters$.asScala(FutureConverters.scala:73) ?

For reference, Pekko doesn't even use scala.jdk.javaapi.FutureConverters. It has its own FutureConverters class.

pjfanning commented 3 months ago

does look quite like https://github.com/scala/bug/issues/12918

He-Pin commented 3 months ago

This is been fixed in scala

pro-kaushal commented 3 months ago

thanks sorted the issue