Chris Hostetter wrote:
: With this committed it also makes sense to deprecate the setUseScorer14()
: method and the corresponding get...() method. If you want a patch for that,
: I'll gladly provide one.

i haven't really been able to follow this issue as much as i would like,
but docs now sometimes coming out of order and the need to hobble
QueryUtils.check(Query,Searcher) because of this alarms me a bit ... i
can't really think of all the cases this might cause problems for people,
but i'm, sure there may be some (i remember it was kind of a big deal when
BooleanScorer2 came out and people could start relying on docs coming in
order ... it's why ConstantScoreRangeQuery because a wrapper arround
ConstantScoreQuery -- the first version i wrote collected dos in order
they were found while walking the TermEnum/TermDocs and people didn't like
that this ment they weren't in order)

I agree. I also believe that a lot of people rely on docs in order (I do too in some cases). I think before we make a 2.2 release we should change this, so that the docs are still in order per default.

perhaps this patch should be changed to only have this effect
(BooleanScorer2 delegating to BooleanScorer) only if
BooleanQuery.setUseScorer14(true) has been called -- and the existing use
of BooleanQuery.getUseScorer14() to decide between BooleanWeight and
BooleanWeight2 can be removed (and BooleanWeight can be deprecated)

that way people who are okay with getting docs out of order can call
BooleanQuery.setUseScorer14(true) and get the performance benefits when
possible, but people who want to be sure they get documents in order have
to accept that in some cases their queries arent' as fast asthey could be.

+1. I think this makes sense. We can implement it this way for now, and maybe in the future we can deprecate setUseScorer14() and add something like

void allowDocsOutOfOrer(boolean allow);

to Query as Doron suggested. I'm going to reopen LUCENE-730.

...i believe what i'm suggesting would keep the fundemental meaning of
setUseScorer(true), even if the value is now used in a slightly differnet
place ... correct?


-Hoss


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to