Uploaded image for project: 'Solr'
  1. Solr
  2. SOLR-14763

SolrJ Client Async HTTP/2 Requests

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: 8.7
    • Fix Version/s: None
    • Component/s: SolrJ
    • Labels:
      None

      Description

      In SOLR-14354, Cao Manh Dat created an API to use Jetty async API to make more thread efficient HttpShardHandler requests. This added public async request APIs to Http2SolrClient and LBHttp2SolrClient. There are a few ways this API can be improved, that I will track in this issue:

      1) Using a CompletableFuture-based async API signature, instead of using internal custom interfaces (Cancellable, AsyncListener) - based on this discussion.

      2) An async API is also useful in other HTTP/2 Solr clients as well, particularly CloudHttp2SolrClient (SOLR-14675). I will add a requestAsync method to the SolrClient class, with a default method that initially throws an unsupported operation exception (maybe this can be later updated to use an executor to handle the async request as a default impl). For now, I'll override the default implementation in the Http2SolrClient and CloudHttp2SolrClient.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                rishisankar Rishi Sankar
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:

                  Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 6h 10m
                  6h 10m