Paul, your response reminded me of a case I forgot to consider: multi-valued fields (the same document matching more than one term in the range). In that case, my scorer will produce duplicates. I assume that a scorer that produces dups is not allowed.
It looks like I don't really have any other choice than a bitset to remove the dups. At least I will be able to implement skipTo though... > For maximum performance, top level disjunctions are probably best done > unordered, for example like the 1.4 BooleanScorer. > From what I understood so far, this UnscoredRangeQuery has the same > properties: it is a disjunction and it also works unordered. Right. > A disjunction that is (severely) limited by a filter or that is a subquery of > a conjunction is probably best evaluated in an ordered way, and for these > cases the DisjunctionSumScorer in the development version is good. What I'm thinking of is that if the number of terms are small enough, I can use whatever RangeQuery.rewrite() would have used. If there are too many terms, I can fall back to a new UnscoredRangeQuery. -Yonik --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
