[ https://issues.apache.org/jira/browse/SOLR-5973?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14010733#comment-14010733 ]
ASF subversion and git services commented on SOLR-5973: ------------------------------------------------------- Commit 1597923 from [~joel.bernstein] in branch 'dev/branches/branch_4x' [ https://svn.apache.org/r1597923 ] SOLR-5973: Pluggable Ranking Collectors and Merge Strategies > 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: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org