Closed geoffkizer closed 2 months ago
Tagging subscribers to this area: @dotnet/ncl See info in area-owners.md if you want to be subscribed.
Author: | geoffkizer |
---|---|
Assignees: | - |
Labels: | `area-System.Net.Http` |
Milestone: | 6.0.0 |
Triage: Would manifest as memory leak
@geoffkizer What exactly is missing? I see we check the expiration and dispose and clean up the connection: https://github.com/dotnet/runtime/blob/f59a132bfe9ff797f9d192d67f07673a13b6b29e/src/libraries/System.Net.Http/src/System/Net/Http/SocketsHttpHandler/HttpConnectionPool.cs#L812-L818
BTW, I think we should update the HTTP3 connection pooling logic in general to match the recent changes I made to HTTP11/2. As part of that, this should just fall out.
I changed the milestone to 7.0. We can't deliver production quality HTTP3 without this.
See also https://github.com/dotnet/runtime/issues/60729, which has some proposals for how to change how connection scavenging works.
We should decide if we want to make any of those changes before we implement scavenging for HTTP3, to avoid wasted work.
We are not scavenging HTTP3 connections currently (i.e. based on idle timeout or lifetime). We need to implement this.