Uh oh!
There was an error while loading. Please reload this page.
[release/9.0-staging] Bugfix InvalidOperationException/IndexOutOfRangeException in HttpListener.EndGetContext - #110695
Conversation
…ust have exclusive access
Tagging subscribers to this area: @dotnet/ncl |
karelz
left a comment
There was a problem hiding this comment.
Looks like we could have used DisconnectResults directly, there was no need to put it into a variable - that is a cosmetic change.
The real meaningful change is protecting the dictionary from unlocked access - which happened in 2 places.
rokonec
left a comment
There was a problem hiding this comment.
I think it would would work even without using local variable disconnectResults however using it will not harm anything and could have slightly better runtime performance by not calling DisconnectResults getter multiple time.
Changes looks safe and correct to me.
karelz
commented
Dec 19, 2024
It is worth fixing in servicing to unblock customers. Marking as such. |
pjannesen
commented
Dec 19, 2024
The reason behind the local variable is that the getter results in a Volatile.Read. Which makes it more expensive. |
karelz
commented
Jan 10, 2025
Approved by .NET Shiproom (@SteveMCarroll) over email on 1/8. Marking Servicing-approved. |
rokonec
commented
Jan 10, 2025
/ba-g failing flaky tests most probably unrelated to changes of this PR |
Backport of #107804 to release/9.0-staging
Fixes#107025
/cc @rokonec@pjannesen
Customer Impact
Reported by customer in #107025. Affects their admin access to services - causes reliability problem.
Regression
From .NET Framework
Testing
Note: The problem is intermittent and hard to reproduce.
Manual testing has been performed - customer validated with private patch prior to submitting .NET 10 PR - see #107025 (comment)
Risk
Low - these simple changes do not add or modify complex logic