Skip to content
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

[release/8.0-staging] Sys.RT.Caching.MemoryCache - Remove unhandled exception handler #106221

Conversation

StephenMolloy
Copy link
Member

  • Description - Timer was updated in 5.0 to improve performance, but is prone to deadlocks when manipulated in an unhandled exception handler. Which MemoryCache does. And MemoryCache is probably more likely to witness unhandled exceptions like OOM than typical code.
  • Customer Impact - The deadlock was affecting a first-party team (running services on Substrate) from migrating to .Net 6 and 8.
  • Regression? - Yes, since .Net 5.0. And also a regression from NetFx.
  • Risk Low.

Original Issue: #64115 (and #102666)
.Net 9.0 PR: #105853
(This was originally fixed in 9.0 with #103937, but after discussion with servicing shiproom, we have decided on a different approach. These servicing PR's are minimal and do not include the removal of the AppDomain.DomainUnload handler, per this comment.)

System.Runtime.Caching is an OOB package that ships alongside the runtime.

@StephenMolloy StephenMolloy marked this pull request as ready for review August 20, 2024 23:03
@StephenMolloy StephenMolloy added the Servicing-consider Issue for next servicing release review label Aug 20, 2024
@rbhanda rbhanda added Servicing-approved Approved for servicing release and removed Servicing-consider Issue for next servicing release review labels Aug 22, 2024
@rbhanda rbhanda modified the milestones: 8.0.x, 8.0.10 Aug 22, 2024
@StephenMolloy StephenMolloy merged commit 900c83f into dotnet:release/8.0-staging Aug 22, 2024
110 of 114 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants