-
Notifications
You must be signed in to change notification settings - Fork 21.5k
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
Clarify FunctionsPreservedDependencies and FunctionsSkipCleanOutput #77460
Conversation
@fowl2 : Thanks for your contribution! The author(s) have been notified to review your proposed change. |
@fowl2 : Thanks for your contribution! The author(s) have been notified to review your proposed change. |
This pull request has been inactive for 14 days. If you are finished with your changes, don't forget to sign off. See the contributor guide for instructions. |
@ggailey777 - what do you think? |
@gzuber you contributed to the other issue, could you help here? |
@ggailey777 @mijacobs Is a resource available to review the proposed update to the article? Thanks. |
@fowl2 and @bryanknox sorry for the delay in getting to this submission. I checked with the product team, and they would actually prefer that we remove this workaround documentation altogether. Apparently, the issue occurs rarely, and using these settings when not needed can negatively impact performance. Thanks for having us take another look at this section of the article. #please-close |
The reason I created this PR was because I had an issue, had to trawl through GitHub to resolve it and figured I'd save someone (possibly me) the trouble again in future. So I'd encourage you to reconsider, thanks. |
Please reconsider closing this PR. It would be helpful for the FunctionsSkipCleanOutput` feature to be documented, even if it is rarely used. Possible performance impacts of its use could also be document. That would help folks make better choices. Rather than leaving it undocumented and forcing people like @fowl2 and I to do more work, and perhaps take more risks, with undocumented features. |
I do appreciate your passion for helping our customers succeed. I've spoken to our support folks and I've asked them to let me know if there are negative impacts due to this removal. |
I wrote a blog post about |
The blog post from @bryanknox saved us here. Really surprised this has been removed from the original documentation. |
If this had been documented officially, it would have saved an awful lot of time. It is not clear that this mechanism exists by default, and the resultant error message points nowhere to the cleaning operation being the cause. @bryanknox thank you for documenting this on your blog. |
Hmm same, this seems to happen rarely, but on an often basis. Of course trading poorly performing, for not working at all makes sense. Lets put that dust bunny back under the rug where it belongs. @bryanknox thank you for documenting this on your blog. |
@bryanknox thanks for the blog post! I'll add on to this thread that for me, the workarounds described in the blog post initially did not work, however once I changed from targeting net7.0 to net6.0, they did end up working. |
@Bryanknow What is the real fix, as in the mode of operation that does not cause the problem in the first place. Is it that we should run Azure Functions always in isolated mode wherever possible? I can't help feeling this is a bug that no-one wants to address. |
@rschurchill the future of Azure Functions is the isolated worker model. In-process functions will be out of support at the same time as .NET LST version they depend on. November 2024 for .NET 6, and November 2026 for .NET 8. I recommend moving to isolated functions. My understanding of the root of this issue is that in-process functions will often depend on assemblies that are also used by the functions runtime in the same process. The runtime will unload those assemblies, even if the function app depends on a different version of the assembly than is used by the functions the runtime. I'm guessing this issue won't be addressed, even when in-process function support is added to .NET 8 in 2024. |
Clarify FunctionsPreservedDependencies and FunctionsSkipCleanOutput with some info gleaned from Azure/azure-functions-host#6849 (comment)
Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.