Skip to content

Conversation

@andystaples
Copy link
Contributor

Currently, if we match multiple assemblies in FailureDetails.IsCausedBy's final case, we throw AmbiguousMatchException. This can be detrimental when multiple versions of the same assembly are loaded. This softens this check so that if multiple assemblies are matched to the FailureDetails' name, we will return true if any are assignable to T.

Found from a bug where the Durable Functions WebJobs extension loaded into the Functions Host checks if a FailureDetails returned from the user activity code IsCausedBy and threw an exception due to the host loading multiple versions of the DLL from which the exception originated (even though the exception was thrown in the dotnet isolated worker).

@andystaples andystaples requested a review from cgillum August 29, 2025 21:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants