[
https://issues.apache.org/jira/browse/LUCENE-1717?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12724032#action_12724032
]
Simon Willnauer commented on LUCENE-1717:
-----------------------------------------
bq. But we default that to unlimited (meaning, flush when RAM limit is hit),
which I think is a good default once we fix the accounting in IndexWriter to
properly account for buffered delete's RAM usage.
I agree we should track the ram usage of BufferedDeletes too.
One other thing I wonder about is why deletesInRam is only cleared on abort.
Once IndexWriter#doFlushInternal is executed the DocWriter pushes deletes from
deletesInRam to deletesFlushed. Shouldn't this call deletesInRam#clear() to
free the memory in this instance of BufferedDeletes. That could at least help a
bit if I do not miss anything important.
> IndexWriter does not properly account for the RAM consumed by pending deletes
> -----------------------------------------------------------------------------
>
> Key: LUCENE-1717
> URL: https://issues.apache.org/jira/browse/LUCENE-1717
> Project: Lucene - Java
> Issue Type: Bug
> Affects Versions: 2.4, 2.4.1
> Reporter: Michael McCandless
> Fix For: 2.9
>
>
> IndexWriter, with autoCommit false, is able to carry buffered deletes for
> quite some time before materializing them to docIDs (thus freeing up RAM
> used).
> It's only on triggering a merge (or, commit/close) that the deletes are
> materialized and the RAM is freed.
> I expect this in practice is a smallish amount of RAM, but we should still
> fix it.
> I don't have a patch yet so if someone wants to grab this, feel free!!
--
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]