OK, I think this will improve the situation:
https://issues.apache.org/jira/browse/LUCENE-1596

-Yonik
http://www.lucidimagination.com


On Fri, Apr 10, 2009 at 1:47 PM, Michael McCandless
<luc...@mikemccandless.com> wrote:
> We never fully explained it, but we have some ideas...
>
> It's only if you iterate each term, and do a TermDocs.seek for each,
> that Multi*Reader seems to show the problem.  Just iterating the terms
> seems OK (I have a 51 segment index, and I can iterate ~ 10M unique
> terms in ~8 seconds).
>
> But loading FieldCache, or doing eg RangeQuery, also does a
> MultiTermDocs.seek on each term, which in turn calls
> SegmentTermDocs.seek for each of the sub-readers in sequence.  I
> *think* maybe for highly unique terms, where typically all segments
> but one actually have the term, the cost of invoking seek on those
> segments without the term is high.  Really, somehow, we want to only
> call seek on those segments that have the term, which we know from the
> pqueue...
>
> Mike

---------------------------------------------------------------------
To unsubscribe, e-mail: java-user-unsubscr...@lucene.apache.org
For additional commands, e-mail: java-user-h...@lucene.apache.org

Reply via email to