[jira] [Updated] (SOLR-5973) Pluggable Ranking Collectors and Merge Strategies

2014-05-27 Thread Joel Bernstein (JIRA)

 [ 
https://issues.apache.org/jira/browse/SOLR-5973?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Joel Bernstein updated SOLR-5973:
-

Attachment: SOLR-5973.patch

A new patch. Solves issues that were found while working on SOLR-6088.

 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={!customRank subquery=*:* param1=a param2=b}wt=jsonindent=true
 {code}
 In the sample above the param: {code}q={!customRank  subquery=*:* 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 
 it's  subquery.
 The RankQuery impl will have to do several things:
 1) Implement the RankQuery interface.
 2) Wrap the subquery and proxy all calls to the Query interface to the 
 subquery. Using local params syntax the subquery can be any valid Solr query. 
 The custom QParserPlugin is responsible for parsing the subquery.
 3)  Implement hashCode() and equals() so the queryResultCache works properly 
 with subquery and custom ranking algorithm. 



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



[jira] [Updated] (SOLR-5973) Pluggable Ranking Collectors and Merge Strategies

2014-05-27 Thread Joel Bernstein (JIRA)

 [ 
https://issues.apache.org/jira/browse/SOLR-5973?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Joel Bernstein updated SOLR-5973:
-

Description: 
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=hellorq={!customRank param1=a param2=b}wt=jsonindent=true
{code}
In the sample above the 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.




  was:
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={!customRank subquery=*:* param1=a param2=b}wt=jsonindent=true
{code}
In the sample above the param: {code}q={!customRank  subquery=*:* 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 
it's  subquery.

The RankQuery impl will have to do several things:

1) Implement the RankQuery interface.
2) Wrap the subquery and proxy all calls to the Query interface to the 
subquery. Using local params syntax the subquery can be any valid Solr query. 
The custom QParserPlugin is responsible for parsing the subquery.
3)  Implement hashCode() and equals() so the queryResultCache works properly 
with subquery and custom ranking algorithm. 





 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=hellorq={!customRank param1=a param2=b}wt=jsonindent=true
 {code}
 In the sample above the 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



[jira] [Updated] (SOLR-5973) Pluggable Ranking Collectors and Merge Strategies

2014-05-27 Thread Joel Bernstein (JIRA)

 [ 
https://issues.apache.org/jira/browse/SOLR-5973?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Joel Bernstein updated SOLR-5973:
-

Description: 
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=hellorq={!customRank param1=a param2=b}wt=jsonindent=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.




  was:
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=hellorq={!customRank param1=a param2=b}wt=jsonindent=true
{code}
In the sample above the 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.





 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=hellorq={!customRank param1=a param2=b}wt=jsonindent=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



[jira] [Updated] (SOLR-5973) Pluggable Ranking Collectors and Merge Strategies

2014-05-15 Thread Joel Bernstein (JIRA)

 [ 
https://issues.apache.org/jira/browse/SOLR-5973?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Joel Bernstein updated SOLR-5973:
-

Summary: Pluggable Ranking Collectors and Merge Strategies  (was: Pluggable 
Ranking Collectors)

 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


 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={!customRank subquery=*:* param1=a param2=b}wt=jsonindent=true
 {code}
 In the sample above the param: {code}q={!customRank  subquery=*:* 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 
 it's  subquery.
 The RankQuery impl will have to do several things:
 1) Implement the RankQuery interface.
 2) Wrap the subquery and proxy all calls to the Query interface to the 
 subquery. Using local params syntax the subquery can be any valid Solr query. 
 The custom QParserPlugin is responsible for parsing the subquery.
 3)  Implement hashCode() and equals() so the queryResultCache works properly 
 with subquery and custom ranking algorithm. 



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



[jira] [Updated] (SOLR-5973) Pluggable Ranking Collectors and Merge Strategies

2014-05-15 Thread Joel Bernstein (JIRA)

 [ 
https://issues.apache.org/jira/browse/SOLR-5973?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Joel Bernstein updated SOLR-5973:
-

Attachment: SOLR-5973.patch

 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


 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={!customRank subquery=*:* param1=a param2=b}wt=jsonindent=true
 {code}
 In the sample above the param: {code}q={!customRank  subquery=*:* 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 
 it's  subquery.
 The RankQuery impl will have to do several things:
 1) Implement the RankQuery interface.
 2) Wrap the subquery and proxy all calls to the Query interface to the 
 subquery. Using local params syntax the subquery can be any valid Solr query. 
 The custom QParserPlugin is responsible for parsing the subquery.
 3)  Implement hashCode() and equals() so the queryResultCache works properly 
 with subquery and custom ranking algorithm. 



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