[ 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: java-dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-dev-help@lucene.apache.org
|