lucene-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michael McCandless <>
Subject Re: semi-infinite loop during merging
Date Fri, 24 Apr 2009 21:11:38 GMT
On Fri, Apr 24, 2009 at 5:02 PM, Christiaan Fluit
<> wrote:

> Rollback does not work for me, as my IW is in auto-commit mode. It gives an
> IllegalStateException when I invoke it.
> A workaround that does work for me is to close and reopen the IndexWriter
> immediately after an OOME occurs.

Ahh, right: that's (close the writer) the correct workaround (when
autoCommit=true).  Though... it'd be best to not hit OOME so often.

> I added message(String) invocations in all places where the IW.hitOOM flag
> is set, to see which method turns it on. It turned out to be addDocument
> (twice). These OOME's only happen with the JET build, which explains why the
> Java build does not show the exploding index behavior: the hitOOM flag is
> simply never set and the merge is allowed to proceed normally.

Why does JET hit OOME but straight JRE doesn't?

> The flag is definitely not set while the IW is merging, nor do any OOME's
> appear in my log files during merging. Therefore, there must be a problem in
> how the merge operation responds to the flag being set.

OK; likely a merge eventually tried to start after the OOME.


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

View raw message