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

Michael McCandless commented on LUCENE-2960:
--------------------------------------------


bq. As I said on the list - if one needs to change IW config, he can always 
recreate IW with new settings.

That's not really true, in general.  If you have a large merge running
then closing the IW can take an unpredictable amount of time.  You
could abort the merges on close, but that's obviously not great.

Furthermore, closing the IW also forces you to commit, and I don't
like tying changing of configuration to forcing a commit.

In fact, it doesn't make sense to me to arbitrarily prevent settings
from being live, just because we've factored out IWC as a separate
class.  Many of these settings were "naturally" live before the IWC
cutover, and have no particular reason not to be (besides this API
change).

We could also rollback the IWC change.  I'm not saying that's a great
option, but, it should be on the table.

InfoStream, for example, should remain live: eg, maybe I'm having
trouble w/ optimize, so, I turn on infoStream and then call optimize.

The flushing params (maxBufferedDocs/Deletes/RAM) should also remain
live, since we have a very real user/data point (Shay) relying on
this.

But take MergedSegmentWarmer (used to be live but is now unchangeable).
This is a setting that obviously can easily remain live; there's no
technical reason for it not to be.  So why should we force it to be
unchangeable?  That can only remove freedom, freedom that is perhaps
valuable to an app somewhere.

> Allow (or bring back) the ability to setRAMBufferSizeMB on an open IndexWriter
> ------------------------------------------------------------------------------
>
>                 Key: LUCENE-2960
>                 URL: https://issues.apache.org/jira/browse/LUCENE-2960
>             Project: Lucene - Java
>          Issue Type: Improvement
>          Components: Index
>            Reporter: Shay Banon
>            Priority: Blocker
>             Fix For: 3.1, 4.0
>
>
> In 3.1 the ability to setRAMBufferSizeMB is deprecated, and removed in trunk. 
> It would be great to be able to control that on a live IndexWriter. Other 
> possible two methods that would be great to bring back are 
> setTermIndexInterval and setReaderTermsIndexDivisor. Most of the other 
> setters can actually be set on the MergePolicy itself, so no need for setters 
> for those (I think).

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

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

Reply via email to