Hi all, I am finding a need to merge the results of multiple queries to accomplish a functionality similar to this https://issues.apache.org/jira/browse/SOLR-1093. The rules are:
1. Make query 1 2. If results returned by query1 is less than a certain threshold, then Make query 2 Extending this idea, I want to be able to create a query chain, i.e, provide a functionality where you could specify n queries and n-1 thresholds in a single url. Start querying in the order from 1 to n until one of them produces results that exceed the threshold. I have got a proof of concept ready where I just modified doFilter function in SolrDispatchFilter.java. I am thinking about writing a MultiSelectHandler that would handle the multiselect functionality. There are three designs that come to my mind. 1. I could add a wrapper in the doFilter that would create muliple SearchHandler's and run them in parallel and merge them into one. 2. I could have a MultiSearch handler that derives from the RequestHandlerBase. MultiSearchHandler would compose the List of SearchHandler objects and execute them. 3. MultiSearchHandler could compose multiple SearchComponents and execute them. PS: These n queries and n threshold are passed on a single url and each of them could use different request handlers and therefore take a different set of parameters. By threshold I mean the count of results returned(hits/NumFound). Also, this new functionality is just a start to many. It would help us execute queries in parallel and come up with various flavours like just send two queries and merge the results of two etc. Thank you, Karthick