http: removing the http1 and http2 connection pools #13967
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is a refactor to make #13922 safe long term.
Basically the HTTP/1 and HTTP/2 logic used to be split between the ActiveClient, and the ConnectionPool classes.
Prior refactors moved all the logic from the pool to the client, so that the new MixedConnectionPool could have HTTP/1 or HTTP/2 clients, with all the logic contained in the ActiveClient. This does away with the pool classes entirely, so folks don't add any logic back.
This could go one of two ways. We can keep the FixedConnectionPool and MixedConnectionPool long term, or we can have a single merged pool with if (alpn) {alpn_logic} else {fixed_logic}. I don't have strong feelings, but felt the split was a bit cleaner.
Risk Level: Medium
Testing: n/a (pure refactor)
Docs Changes: n/a
Release Notes: n/a
Part of #3431