You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Michael McCandless (JIRA)" <ji...@apache.org> on 2008/12/08 20:02:44 UTC

[jira] Commented: (LUCENE-1471) Faster MultiSearcher.search merge docs

    [ https://issues.apache.org/jira/browse/LUCENE-1471?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12654520#action_12654520 ] 

Michael McCandless commented on LUCENE-1471:
--------------------------------------------


I agree performance improvement is probably smallish since m & n are
usually small; still it'd be good to improve it, especially since
we're discussing cutting over sort-by-field searching in IndexSearcher
to the MultiSearcher approach, and, sometimes m & n may not be small.

There are two different patches here.  I think the approaches are
mostly the same (ie use 2nd pqueue to extract top N merged results),
but on quick inspection there are some differences:

  * The first one shares a common source for the big switch statement
    (by extending FieldDocSortedHitQueue) on SortField.getType(), which
    is great.

  * First one passes all tests; 2nd one fails at least 3 tests (all
    due to the AUTO SortField -- what's the fix here?).

  * Code style is closer to Lucene's in the first one ({'s not on
    separate lines, no _ leader in many variable names).

I'm sure there are other differences I'm missing.  Can you two work
together to merge the two patches into a single one?  Thanks.


> Faster MultiSearcher.search merge docs 
> ---------------------------------------
>
>                 Key: LUCENE-1471
>                 URL: https://issues.apache.org/jira/browse/LUCENE-1471
>             Project: Lucene - Java
>          Issue Type: Improvement
>          Components: Search
>    Affects Versions: 2.4
>            Reporter: Jason Rutherglen
>            Assignee: Michael McCandless
>            Priority: Minor
>         Attachments: LUCENE-1471.patch, multisearcher.patch
>
>   Original Estimate: 8h
>  Remaining Estimate: 8h
>
> MultiSearcher.search places sorted search results from individual searchers into a PriorityQueue.  This can be made to be more optimal by taking advantage of the fact that the results returned are already sorted.  
> The proposed solution places the sub-searcher results iterator into a custom PriorityQueue that produces the sorted ScoreDocs.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-dev-help@lucene.apache.org