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

Http2SolrClient loss of MDC context

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Minor
    • Resolution: Fixed
    • 9.0, 9.1
    • 9.2
    • SolrJ
    • None

    Description

      The Http2SolrClient loses MDC context information when running an async request in Solr 9.x.

      The issue is the 'Request#send' [0] call is actually async itself and by the time the response listener kicks in to push the response processing to the executor the MDC context is already lost, so the executor will no longer have access to the original MDC in order to push it forward onto the thread that will process the response.
       
      This is very difficult to capture on a running system, there are no logs during this window. I only saw it because I was specifically looking at thread names for a different reason.
      This is how it is reflected in the thread names:
       - how it should be (Solr 8 style. containing all MDC data):

      httpShardExecutor-5-thread-19-processing-gettingstarted_shard2_replica_n2 core_node5 localhost:8983_solr gettingstarted shard2 localhost-4

       - how it is in Solr 9 (due to no MDC context)

      httpShardExecutor-5-thread-10

      I can't tell if there is anything breaking due to this.

      [0] https://github.com/apache/solr/blob/7eee7a8ad3c43db0dc26c663dd16764d1fb3dbf4/solr/solrj/src/java/org/apache/solr/client/solrj/impl/Http2SolrClient.java#L458

      Attachments

        Activity

          People

            Unassigned Unassigned
            stillalex Alex Deparvu
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Time Tracking

                Estimated:
                Original Estimate - Not Specified
                Not Specified
                Remaining:
                Remaining Estimate - 0h
                0h
                Logged:
                Time Spent - 5h 40m
                5h 40m