-
Notifications
You must be signed in to change notification settings - Fork 447
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
Allow for an output binding value of an invocation result to be null
#10698
Conversation
null
Is this a breaking change for customers? |
I don't believe this will break existing customers explicitly. It will allow for a successful invocation to have an output binding with a I think that currently, cases where we can expect This could definitely open the door for some new scenarios though. If a customer expects to have a value for their output binding but their function invocation status is "successful" despite an erroneous |
Issue describing the changes in this PR
Part of the fix for Azure/azure-functions-dotnet-worker#2682, related to Azure/azure-functions-dotnet-worker#2896.
Allows for output binding values to be
null
, which is interpreted as the typeParameterBinding.None
when receiving the values over gRPC.Pull request checklist
IMPORTANT: Currently, changes must be backported to the
in-proc
branch to be included in Core Tools and non-Flex deployments.in-proc
branch is not requiredrelease_notes.md
Additional information
Here is the original PR adding the switch statement. The logic was originally added to differentiate between data transferred by the worker using shared memory vs RPC. It doesn't appear to purposefully prevent output bindings from having a
null
value.Invocation results are nullable (see here), and the HTTP Proxying design sends a null result over the gRPC pipeline.