[ 
https://issues.apache.org/jira/browse/SOLR-2026?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12895340#action_12895340
 ] 

Karl Wright commented on SOLR-2026:
-----------------------------------

Here's an example of the solrconfig.xml using the attached patch:

  <requestHandler name="/querytest" class="solr.SearchHandler" lazy="true">

    <arr name="queries">
      <lst name="query1">
          <!-- the first query's configuration -->
          <arr name="components">
            <str>query</str>
          </arr>
      </lst>
      <lst name="query2">
          <!-- the second query's configuration -->
          <arr name="components">
            <str>query</str>
          </arr>
      </lst>
    </arr>

    <!-- Note well: the final query of the sequence is specified at this root 
level.  In this case, the default components are all chosen.
          Thus, this example represents three queries performed in sequence.  
-->

  </requestHandler>


Note also that the ResponseBuilder object from the previous query is made 
available in the next query's request context.  Use 
SolrRequestObject.getContext().get("previousresponse") to grab it.


> Need infrastructure support in Solr for requests that perform multiple 
> sequential queries
> -----------------------------------------------------------------------------------------
>
>                 Key: SOLR-2026
>                 URL: https://issues.apache.org/jira/browse/SOLR-2026
>             Project: Solr
>          Issue Type: Improvement
>          Components: SearchComponents - other
>            Reporter: Karl Wright
>         Attachments: SOLR-2026.patch
>
>
> Several known cases exist where multiple index searches need to be performed 
> in order to arrive at the final result.  Typically, these have the constraint 
> that the results from one search query are required in order to form a 
> subsequent search query.  While it is possible to write a custom 
> QueryComponent or search handler to perform this task, an extension to the 
> SearchHandler base class would readily permit such query sequences to be 
> configured using solrconfig.xml.
> I will be therefore writing and attaching a patch tomorrow morning which 
> supports this extended functionality in a backwards-compatible manner.  The 
> tricky part, which is figuring out how to funnel the output of the previous 
> search result into the next query, can be readily achieved by use of the 
> SolrRequestObject.getContext() functionality.  The stipulation will therefore 
> be that the SolrRequestObject's lifetime will be that of the entire request, 
> which makes complete sense.  (The SolrResponseObject's lifetime will, on the 
> other hand, be limited to a single query, and the last response so formed 
> will be what gets actually returned by SearchHandler.)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to