He-Pin commented on issue #610:
URL: https://github.com/apache/pekko/issues/610#issuecomment-4576972395

   Root-cause analysis: this is the test marked with an explicit in-code `// 
FIXME https://github.com/akka/akka/issues/30844` (StreamRefsSpec.scala:361, 
just above the failing case "pass cancellation upstream across remoting before 
elements has been emitted").
   
   When cancellation is propagated across remoting *before any element has been 
emitted*, the `KillSwitches.shutdown()` races the remote `SourceRef` actor 
termination: the local side can observe 
`RemoteStreamRefActorTerminatedException` ("message loss may have happened") 
instead of a clean `Done`. This is a known upstream product race in stream-ref 
cancellation propagation that Akka itself left unfixed (akka#30844).
   
   Making the test tolerate both `Done` and the termination exception would 
only **mask** the deliberately-flagged product bug, so a test-only tweak is not 
appropriate here. The real fix belongs in the stream-ref cancellation path. 
Leaving open and linked to the FIXME.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to