[ 
https://issues.apache.org/jira/browse/LUCENE-2311?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12874224#action_12874224
 ] 

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: https://issues.apache.org/jira/browse/LUCENE-2311
>             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: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to