He-Pin opened a new pull request, #3169:
URL: https://github.com/apache/pekko/pull/3169

   ### Motivation
   
   Backport of #3166 to the 1.7.x release branch.
   
   `EndpointReader` only caught `NotSerializableException` and 
`IllegalArgumentException` during non-reliable message dispatch, allowing other 
`NonFatal` deserialization failures to escape and stop the endpoint. The 
reliable delivery path (`deliverAndAck`) did not protect dispatch at all. 
Additionally, `EndpointWriter` error logs showed the outer wrapper class 
instead of the actual message type for wrapped messages.
   
   ### Modification
   
   - `EndpointReader`: catch `NonFatal` dispatch failures on both non-reliable 
and reliable delivery paths and log them as transient deserialization errors
   - `EndpointWriter`: use `WrappedMessage.unwrap()` to log the inner message 
class in oversized payload and serialization error messages
   - Change `logTransientSerializationError` parameter from `Exception` to 
`Throwable`
   - Update log message from "Serializer not defined" to "Could not 
deserialize" to cover all deserialization failure scenarios
   
   ### Result
   
   Transient deserialization failures no longer tear down the classic remoting 
endpoint, and error logs now show the actual message type for wrapped messages.
   
   ### Tests
   
   - `sbt "remote / Test / testOnly 
org.apache.pekko.remote.TransientSerializationErrorSpec"`
   
   ### References
   
   Refs #3166 - backport to 1.7.x


-- 
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