-
Notifications
You must be signed in to change notification settings - Fork 4.7k
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
[.NET 7] Fix spurious OOMs after upgrading to 7 #79158
Conversation
…t#77478) Problem was that a BGC was in progress when the full GC was requested by setting the last_gc_before_oom flag, and at the end of the BGC we turned off the last_gc_before_oom flag. Fix is simply not to turn off the flag in the case of BGC.
… 1 GC. (dotnet#78973) This is a refinement suggested by Maoni for earlier PR#77478 - the last_gc_before_oom flag should also not be reset by an intervening gen 1 GC. This was noticed by Maoni due to a customer issue with spurious OOM exceptions with .NET Core 7.
Tagging subscribers to this area: @dotnet/gc Issue Detailsnull
|
Looks good to me. |
@mangod9 if you haven't yet done so, please send the email to Tactics, and add the |
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.
approved. we will take for consideration in 7.0.x
Approved by Tactics (7.0.3). |
Was this fix included in 7.0.2 release ? |
It missed the window for 7.0.2, will be included in 7.0.3 |
Description
This is fixing the issue (#78959) where customers are noticing spurious OOMs within their applications after upgrading to 7.
This is porting two PRs into 7:
#77478
#78973
Problem was that a BGC was in progress when the full GC was requested by setting the last_gc_before_oom flag, and at the end of the BGC we turned off the last_gc_before_oom flag.
Fix is simply not to turn off the flag in the case of BGC. This is a slightly incomplete fix hence the next PR (#78973) was required
Customer Impact
Reported by multiple customers where they are noticing OOMs after upgrading to .NET 7. Two customers have tried the private fix and confirmed it fixes the issue.
Regression
This is a regression from the 6.0.x version since the bug exists in Regions code.
Testing
Validated by at least two customers who had reported the issue.