On Mon, Oct 12, 2009 at 12:03 PM, Andrzej Bialecki <a...@getopt.org> wrote:
>> Solr never discarded non-positive hits, and now Lucene 2.9 no longer
>> does either.
>
> Hmm ... The code that I pasted in my previous email uses
> Searcher.search(Query, int), which in turn uses search(Query, Filter, int),
> and it doesn't return any results if only the first clause is present (the
> one with negative boost) even though it's a matching clause.
>
> I think this is related to the fact that in TopScoreDocCollector:48 the
> pqTop.score is initialized to 0, and then all results that have lower score
> that this are discarded. Perhaps this should be initialized to
> Float.MIN_VALUE?

Hmmm, You're actually seeing this with Lucene 2.9?
The HitQueue (subclass of PriorityQueue) is pre-populated with
sentinel objects with scores of -Inf, not zero.

-Yonik
http://www.lucidimagination.com

Reply via email to