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

HighlightComponent throws a NullPointerException when the attribute of ResponseBuilder which named 'onePassDistributedQuery' is 'true' and 'rows' is greater than zero

    XMLWordPrintableJSON

Details

    Description

      When the attribute 'onePassDistributedQuery' is 'true',QueryCompoent will not send a ShardRequest to retrive field values, highlight values has been return by shards in createMainQuery together.
      See code below:

      private void handleRegularResponses(ResponseBuilder rb, ShardRequest sreq) {
      if ((sreq.purpose & ShardRequest.PURPOSE_GET_TOP_IDS) != 0)

      { //merge all id and score,and ResponseBuilder.resultIds just stored id between start to rows mergeIds(rb, sreq); }

      if ((sreq.purpose & ShardRequest.PURPOSE_GET_TERM_STATS) != 0)

      { updateStats(rb, sreq); }

      if ((sreq.purpose & ShardRequest.PURPOSE_GET_FIELDS) != 0)

      { //where ResponseBuilder.onePassDistributedQuery is true,highlight values was retrived at same time,but not truncated by 'start' and 'rows',just return top N(N=start+rows), returnFields(rb, sreq); }

      }

      Attachments

        1. solr.patch
          0.8 kB
          zengjie

        Issue Links

          Activity

            People

              dsmiley David Smiley
              zengjie zengjie
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: