Hi, I wonder, do we only need to use the (custom) scorer if the query orders by the pseudo-property "jcr:score"? I mean, it's probably faster not to use any scorer, right?
Regards, Thomas On 15/01/15 08:17, "Rishabh Kumar Maurya" <[email protected]> wrote: >Hi, > >We have search enhancements requests based on search results relevance >like - > >1. boosting score of recently modified documents. >2. boosting documents which are created/last updated by current session >user.(OR boosting on basis specific docfield value). >3. boosting documents with a field value in certain range. > >these are similar to Solr Function Queries[0] use case. I have logged a >issue[1]. > >With Chetan's help I came up with a custom scorer implementation[2], >which exposes lucene CustomScoreQuery[3] via OSGI and one can implement >custom ScorerProvider and use it by configuring index definition with >custom ScorerProvider name. > >Implementation details - > >1. ScorerProvider - ScorerProvider creates lucene CustomScoreQuery, which >user can implement and configure its name in index definition. > >2. ScorerProviderFactory - ScorerProviderFactoryImpl tracks all >ScorerProvider services bound and looks up for ScorerProvider from its >name. > >3. test - customScoreQuery - boost document with specific docfield value >( in this case jcr:createdBy containing 'foo') > >Please review and provide feedbacks. Also, this implementation has >following requirements - > >1. Scorer uses lucene packges(for now exported all lucene packages from >oak-lucene) >2. Some way to access field names in scorer implementation on the basis >of name defined in property definition > > >Thanks > >[0] http://wiki.apache.org/solr/FunctionQuery >[1] https://issues.apache.org/jira/browse/OAK-2399 >[2] https://github.com/rishabhmaurya/jackrabbit-oak/commit/9042200bd >[3] >http://lucene.apache.org/core/4_7_1/queries/org/apache/lucene/queries/Cust >omScoreQuery.html >
