-
Notifications
You must be signed in to change notification settings - Fork 1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix Akka.Remote serialization exception bubbling and messages #5072
Fix Akka.Remote serialization exception bubbling and messages #5072
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not fixed
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Addresses a totally different problem and introduces new ones.
var o = new object(); | ||
var ex = o.Invoking(s => MessageSerializer.Deserialize((ExtendedActorSystem)Sys, serialized)).Should() | ||
.Throw<SerializationException>() | ||
.WithMessage("Failed to deserialize object with serialization id [6] (manifest []).") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This literally reproduces the error we want to get rid of in #5062
//.WithInnerExceptionExactly<SerializationException>() | ||
//.WithMessage("Failed to deserialize object with serialization id [11] (manifest [E]).") | ||
.WithInnerExceptionExactly<SerializationException>() | ||
.WithMessage("Failed to deserialize object with serialization id [13] (manifest [SM])."); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Your use case and reproduction here is wrong - need to have a scenario where SomeMessage
isn't registered at all, not that it fails during deserialization.
The goal of this bug is to unpack the inner exception and throw that - so the user gets a clear error message: that the payload carried by an ActorSelection
couldn't be found because of a missing manifest, not that the ActorSelection
itself couldn't be deserialized.
…ka.net into #5062_Fix_exception_message
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Closes #5062