[
https://issues.apache.org/jira/browse/SOLR-5973?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Joel Bernstein resolved SOLR-5973.
----------------------------------
Resolution: Fixed
> Pluggable Ranking Collectors and Merge Strategies
> -------------------------------------------------
>
> Key: SOLR-5973
> URL: https://issues.apache.org/jira/browse/SOLR-5973
> Project: Solr
> Issue Type: New Feature
> Components: search
> Reporter: Joel Bernstein
> Assignee: Joel Bernstein
> Priority: Minor
> Fix For: 4.9
>
> Attachments: SOLR-5973.patch, SOLR-5973.patch, SOLR-5973.patch,
> SOLR-5973.patch, SOLR-5973.patch, SOLR-5973.patch, SOLR-5973.patch,
> SOLR-5973.patch, SOLR-5973.patch, SOLR-5973.patch, SOLR-5973.patch,
> SOLR-5973.patch, SOLR-5973.patch, SOLR-5973.patch, SOLR-5973.patch,
> SOLR-5973.patch
>
>
> This ticket introduces a new RankQuery and MergeStrategy to Solr. By
> extending the RankQuery class, and implementing it's interface, you can
> specify a custom ranking collector (TopDocsCollector) and distributed merge
> strategy for a Solr query.
> Sample syntax:
> {code}
> q=hello&rq={!customRank param1=a param2=b}&wt=json&indent=true
> {code}
> In the sample above the new "rq" (rank query) param: {code}rq={!customRank
> param1=a param2=b}{code} points to a QParserPlugin that returns a Query that
> extends RankQuery. The RankQuery defines the custom ranking and merge
> strategy for the main query.
> The RankQuery impl will have to do several things:
> 1) Implement the getTopDocsCollector() method to return a custom top docs
> ranking collector.
> 2) Implement the wrap() method. The QueryComponent calls the wrap() method to
> wrap the RankQuery around the main query. This design allows the RankQuery to
> manage Query caching issues and implement custom Query explanations if needed.
> 3) Implement hashCode() and equals() so the queryResultCache works properly
> with main query and custom ranking algorithm.
> 4) Optionally implement a custom MergeStrategy to handle the merging of
> distributed results from the shards.
--
This message was sent by Atlassian JIRA
(v6.2#6252)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]