diff --git a/stream/src/main/scala/org/apache/pekko/stream/SystemMaterializer.scala b/stream/src/main/scala/org/apache/pekko/stream/SystemMaterializer.scala index efd829d47d..05e18d97e4 100644 --- a/stream/src/main/scala/org/apache/pekko/stream/SystemMaterializer.scala +++ b/stream/src/main/scala/org/apache/pekko/stream/SystemMaterializer.scala @@ -96,7 +96,11 @@ final class SystemMaterializer(system: ExtendedActorSystem) extends Extension { val materializer: Materializer = { // block on async creation to make it effectively final - Await.result(systemMaterializerPromise.future, materializerTimeout.duration) + val future = systemMaterializerPromise.future + future.value match { + case Some(value) => value.get + case _ => Await.result(future, materializerTimeout.duration) + } } }