Michael McCandless wrote:
Mark Miller wrote:
So HitCollector#collect(int doc, float score) is not called in a
special
(default) order and must order the docs itself by score if one needs
the
hits sorted by relevance?
Presumably there is no score ordering to the hit id's lucene
delivers to
a HitCollector? i.e. they are delivered in the order they are found and
score is neither ascending or descending i.e. the next score could be
higher or lower that the previous one?
They come in doc id order unless you change
BooleanQuery#setAllowDocsOutOfOrder(boolean allow) (I'm pretty sure
thats the only case, but not positive)
In general, the docIDs are not guaranteed to arrive in order to the
HitCollector. EG in 2.9, IndexSearcher can visit the segments in a
different order.
Mike
Up to 2.4 (current release), they do come in order though, right?
We should update the javadocs in BooleanQuery before 2.9 goes out:
* Specifics: By setting this option to true, calls to
* {...@link HitCollector#collect(int,float)} might be
* invoked first for docid N and only later for docid N-1.
* Being static, this setting is system wide.
* </p>
*/
public static void setAllowDocsOutOfOrder(boolean allow) {
This implies they are normally in doc id order (which they were until
2.9 right?)
- Mark
- Mark
---------------------------------------------------------------------
To unsubscribe, e-mail: java-user-unsubscr...@lucene.apache.org
For additional commands, e-mail: java-user-h...@lucene.apache.org