akka / akka-http

The Streaming-first HTTP server/module of Akka
https://doc.akka.io/docs/akka-http
Other
1.34k stars 594 forks source link

ClientServerSpec: The low-level HTTP infrastructure should log materialization errors in `bindAndHandle` which stop stages on failure #3341

Open raboof opened 4 years ago

raboof commented 4 years ago

https://jenkins.akka.io:8498/job/akka-http-nightly-release-10.1/AKKA_VERSION=default,Node=akka-http-nightly-node,SCALA_VERSION=2.12.10,jdk=AdoptOpenJDK%2011/941/consoleFull

[info]   - stop stages on failure *** FAILED ***
[info]     java.lang.AssertionError: assertion failed: expected no StreamSupervisor children, but got [Actor[akka://ClientServerSpec/system/Materializers/StreamSupervisor-55/flow-0-0-ignoreSink#908263607]]
[info]     at scala.Predef$.assert(Predef.scala:223)
[info]     at akka.stream.testkit.scaladsl.StreamTestKit$.$anonfun$assertNoChildren$2(StreamTestKit.scala:54)
[info]     at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:23)
[info]     at akka.testkit.TestKitBase.poll$2(TestKit.scala:330)
[info]     at akka.testkit.TestKitBase.awaitAssert(TestKit.scala:347)
[info]     at akka.testkit.TestKitBase.awaitAssert$(TestKit.scala:319)
[info]     at akka.testkit.TestKit.awaitAssert(TestKit.scala:969)
[info]     at akka.stream.testkit.scaladsl.StreamTestKit$.$anonfun$assertNoChildren$1(StreamTestKit.scala:51)
[info]     at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:23)
[info]     at akka.testkit.TestKitBase.within(TestKit.scala:416)
johanandren commented 4 years ago

https://jenkins.akka.io:8498/job/akka-http-nightly/AKKA_VERSION=default,Node=akka-http-nightly-node,SCALA_VERSION=2.13.2,jdk=AdoptOpenJDK%208/188/testReport/junit/akka.http.scaladsl/ClientServerSpec/The_low_level_HTTP_infrastructure_should_log_materialization_errors_in__bindAndHandle__which_stop_stages_on_failure/

jrudolph commented 4 years ago

Something seems fishy here, I wonder if it's related to the two systems and materializers but in any case it seems strange that the server keeps (part of) connections around after a failure.

ignasi35 commented 4 years ago

https://jenkins.akka.io:8498/job/akka-http-nightly/197/AKKA_VERSION=master,Node=akka-http-nightly-node,SCALA_VERSION=2.12.11,jdk=AdoptOpenJDK%2011/testReport/junit/akka.http.scaladsl/ClientServerSpec/The_low_level_HTTP_infrastructure_should_log_materialization_errors_in__bindAndHandle__which_stop_stages_on_failure/

ignasi35 commented 4 years ago

https://jenkins.akka.io:8498/job/akka-http-nightly/198/AKKA_VERSION=release-2.5,Node=akka-http-nightly-node,SCALA_VERSION=2.13.2,jdk=AdoptOpenJDK%208/testReport/junit/akka.http.scaladsl/ClientServerSpec/The_low_level_HTTP_infrastructure_should_log_materialization_errors_in__bindAndHandle__which_stop_stages_on_failure/

Note that this job is part of a build matrix where the same error happened also in a different job:

https://jenkins.akka.io:8498/job/akka-http-nightly/198/AKKA_VERSION=master,Node=akka-http-nightly-node,SCALA_VERSION=2.12.11,jdk=AdoptOpenJDK%2011/consoleFull