Solr has had an HTTP/2 based SolrClient since 8.0. Maintaining both HTTP/1 and HTTP/2 clients is a pain for maintenance of the project as it sometimes means duplicative (or partially implemented) work, especially for authentication but also sometimes metrics or tracing. Both adds extra dependencies for SolrJ and thus our users. It's difficult to grok a codebase using two different HTTP client frameworks.
In this issue, mark HttpSolrClient (and related ones) as deprecated; point to HTTP/2 equivalents. Furthermore, mark the Apache "httpcomponents" libs as "optional" in the produced Maven pom.xml so that users have to explicitly opt-in to use it. Announce this in the Solr users list as well.
Out of scope to this issue is completely cutting over within Solr itself.
The plan is to remove apache http client in main branch (10.0)
|Need a DelegationTokenHttp2SolrClient for the new Jetty client