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

Need infrastructure support in Solr for requests that perform multiple sequential queries

    Details

    • Type: New Feature
    • Status: Closed
    • Priority: Minor
    • Resolution: Information Provided
    • Affects Version/s: None
    • Fix Version/s: None
    • Labels:
      None

      Description

      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.)

        Attachments

        1. SOLR-2026.patch
          16 kB
          Simon Willnauer
        2. SOLR-2026.patch
          10 kB
          Karl Wright

          Issue Links

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                kwright@metacarta.com Karl Wright
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: