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

Uwe Schindler commented on LUCENE-2190:
---------------------------------------

During refactoring I found out:

CustomScoreQuery is more broken: the rewrite() method is wrong, for now its not 
really a problem but when we change to per-segment rewrite (as Mike plans) its 
broken. Its even broken if you rewrite against one IndexReader and want to 
reuse the query later on another IndexReader. It rewrites all its subqueries 
and returns itsself, which is wrong: if one of the subqueries was rewritten it 
must return a new clone instance (like BooleanQuery). Also hashCode and equals 
ignore strict.

Will provide patch later. Now everything seems to work correct.

> CustomScoreQuery (function query) is broken (due to per-segment searching)
> --------------------------------------------------------------------------
>
>                 Key: LUCENE-2190
>                 URL: https://issues.apache.org/jira/browse/LUCENE-2190
>             Project: Lucene - Java
>          Issue Type: Bug
>          Components: Search
>    Affects Versions: 2.9, 2.9.1, 3.0, 3.0.1, 3.1
>            Reporter: Michael McCandless
>            Assignee: Michael McCandless
>             Fix For: 2.9.2, 3.0.1, 3.1
>
>         Attachments: LUCENE-2190.patch
>
>
> Spinoff from here:
>   http://lucene.markmail.org/message/psw2m3adzibaixbq
> With the cutover to per-segment searching, CustomScoreQuery is not really 
> usable anymore, because the per-doc custom scoring method (customScore) 
> receives a per-segment docID, yet there is no way to figure out which segment 
> you are currently searching.
> I think to fix this we must also notify the subclass whenever a new segment 
> is switched to.  I think if we copy Collector.setNextReader, that would be 
> sufficient.  It would by default do nothing in CustomScoreQuery, but a 
> subclass could override.

-- 
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-unsubscr...@lucene.apache.org
For additional commands, e-mail: java-dev-h...@lucene.apache.org

Reply via email to