Hi all,
I noticed that the Framing flow of Akka Streams tends to stop the stream 
without letting the outer world know. In essence, the stream just stops and 
supervision is not triggered.
The details of my findings are 
here: 
https://stackoverflow.com/questions/46319846/akka-streams-framing-exceptions-silently-swallowed-how-to-debug

In short, it seems to boil down to some side-effecting fail function inside 
Framing.scala.

private[stream] def fail(connection: Connection, ex: Throwable): Unit = {
  val currentState = connection.portState
  if (Debug) println(s"$Name   fail($connection, $ex) [$currentState]")
  connection.portState = currentState | OutClosed
  if ((currentState & (InClosed | OutClosed)) == 0) {
    connection.portState = currentState | (OutClosed | InFailed)
    connection.slot = Failed(ex, connection.slot)
    if ((currentState & (Pulling | Pushing)) == 0) enqueue(connection)
    else if (chasedPush eq connection) {
      // Abort chasing so Failure is not lost (chasing does NOT decode the 
event but assumes it to be a PUSH
      // but we just changed the event!)
      chasedPush = NoEvent
      enqueue(connection)
    }
  }
  if ((currentState & OutClosed) == 0) 
completeConnection(connection.outOwner.stageId)
}


Is this behaviour desired? I am either missing something or this seems to 
make the system a little less reactive ;)

Cheers
Fabio

-- 
>>>>>>>>>>      Read the docs: http://akka.io/docs/
>>>>>>>>>>      Check the FAQ: 
>>>>>>>>>> http://doc.akka.io/docs/akka/current/additional/faq.html
>>>>>>>>>>      Search the archives: https://groups.google.com/group/akka-user
--- 
You received this message because you are subscribed to the Google Groups "Akka 
User List" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to akka-user+unsubscr...@googlegroups.com.
To post to this group, send email to akka-user@googlegroups.com.
Visit this group at https://groups.google.com/group/akka-user.
For more options, visit https://groups.google.com/d/optout.

Reply via email to