首页 > 解决方案 > “EntityStreamException:实体流截断”是否仅仅意味着客户端超时?

问题描述

自从升级到 Play 2.6 后,我在日志中看到了很多“EntityStreamException:实体流截断”。它看起来与客户端超时密切相关,这并不令人担忧。对于这种常见的 HTTP 事件,应用程序代码出现异常冒泡有点令人担忧,所以我担心这不仅仅是客户端超时。

akka.http.scaladsl.model.EntityStreamException: Entity stream truncation
    at akka.http.impl.engine.parsing.HttpMessageParser$$anonfun$1.applyOrElse(HttpMessageParser.scala:321)
    at akka.http.impl.engine.parsing.HttpMessageParser$$anonfun$1.applyOrElse(HttpMessageParser.scala:319)
    at akka.stream.impl.fusing.Collect$$anon$6.$anonfun$wrappedPf$1(Ops.scala:217)
    at akka.stream.impl.fusing.SupervisedGraphStageLogic.withSupervision(Ops.scala:178)
    at akka.stream.impl.fusing.Collect$$anon$6.onPush(Ops.scala:219)
    at akka.stream.impl.fusing.GraphInterpreter.processPush(GraphInterpreter.scala:515)
    at akka.stream.impl.fusing.GraphInterpreter.processEvent(GraphInterpreter.scala:478)
    at akka.stream.impl.fusing.GraphInterpreter.execute(GraphInterpreter.scala:374)
    at akka.stream.impl.fusing.GraphInterpreterShell.runBatch(ActorGraphInterpreter.scala:588)
    at akka.stream.impl.fusing.GraphInterpreterShell$AsyncInput.execute(ActorGraphInterpreter.scala:474)
    at akka.stream.impl.fusing.GraphInterpreterShell.processEvent(ActorGraphInterpreter.scala:563)
    at akka.stream.impl.fusing.ActorGraphInterpreter.akka$stream$impl$fusing$ActorGraphInterpreter$$processEvent(ActorGraphInterpreter.scala:730)
    at akka.stream.impl.fusing.ActorGraphInterpreter$$anonfun$receive$1.applyOrElse(ActorGraphInterpreter.scala:745)
    at akka.actor.Actor.aroundReceive(Actor.scala:517)
    at akka.actor.Actor.aroundReceive$(Actor.scala:515)
    at akka.stream.impl.fusing.ActorGraphInterpreter.aroundReceive(ActorGraphInterpreter.scala:655)
    at akka.actor.ActorCell.receiveMessage(ActorCell.scala:592)
    at akka.actor.ActorCell.invoke(ActorCell.scala:561)
    at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:258)
    at akka.dispatch.Mailbox.run(Mailbox.scala:225)
    at akka.dispatch.Mailbox.exec(Mailbox.scala:235)
    at akka.dispatch.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
    at akka.dispatch.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
    at akka.dispatch.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
    at akka.dispatch.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)

标签: scalaplayframeworkakka-httpplayframework-2.6

解决方案


推荐阅读