-
Notifications
You must be signed in to change notification settings - Fork 273
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 unintentional input unwrapping for OOP workers #2656
Conversation
Adjusted the fix to not impact JS or any other older style out-of-proc languages. |
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 but let's wait for CI
if (destinationType.Equals(typeof(string))) | ||
if (this.rawInput) |
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.
retroactive bug find: this change in the if-condition affects the "legacy" OOProc SDKs - JS, PowerShell, Python. In those cases, the destinationType is string
, so we should have entered this if-statement, but we no longer do.
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.
Ironically, the comment here describes precisely how this if statement was supposed to be used, but we missed that during review.
This PR fixes an issue where when dispatching JToken values to an out-of-proc worker, we would unwrap the serialized contents, thus causing serialization to fail.
Issue describing the changes in this PR
resolves #2504, microsoft/durabletask-dotnet#199
Pull request checklist
pending_docs.md
release_notes.md
/src/Worker.Extensions.DurableTask/AssemblyInfo.cs