lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Earwin Burrfoot (JIRA)" <>
Subject [jira] Commented: (LUCENE-2311) Pass potent SR to IRWarmer.warm(), and also call warm() for new segments
Date Tue, 01 Jun 2010 20:34:37 GMT


Earwin Burrfoot commented on LUCENE-2311:

This is not the issue of reader turnaround. This is the issue of code clarity.

>From the user's standpoint warming up a new-from-scratch segment and warming up just-merged
segment is the same action. The difference of what happens in which thread, and what blocks/doesn't
block reopen is totally Lucene-internal API-wise. Now you're forcing people to make this distinction
and do absolutely identical warming-up action in two very different places. Moreover, when
warming up a new reader from reopen(), they have to get new segments and then discern which
ones of them were flushed, and which were merged, to avoid warming them up twice.

I think there is no hurry to push the fix for this into 2.9.3. As of now this feature is broken.
There is absolutely no way you can make it work. Thus, there are no applications that are
suffering. Thus, not releasing the fix with 2.9.3, does not multiply suffering under the sun
:) Thus, no need to hurry up and fix this at least somehow instead of doing this properly.

> Pass potent SR to IRWarmer.warm(), and also call warm() for new segments
> ------------------------------------------------------------------------
>                 Key: LUCENE-2311
>                 URL:
>             Project: Lucene - Java
>          Issue Type: Improvement
>          Components: Index
>            Reporter: Earwin Burrfoot
>            Assignee: Michael McCandless
>             Fix For: 2.9.3, 3.0.2, 3.1, 4.0
>         Attachments: LUCENE-2311.patch, LUCENE-2311.patch
> Currently warm() receives a SegmentReader without terms index and docstores.
> It would be arguably more useful for the app to receive a fully loaded reader, so it
can actually fire up some caches. If the warmer is undefined on IW, we probably leave things
as they are.
> It is also arguably more concise and clear to call warm() on all newly created segments,
so there is a single point of warming readers in NRT context, and every subreader coming from
getReader is guaranteed to be warmed up -> you don't have to introduce even more mess in
your code by rechecking it.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message