Zhijiang Wang created LUCENE-5800:
-------------------------------------
Summary: When using NRTCachingDirectory, if the new created
segment is in compound format, it is always created in cache(RAMDirectory). It
will cause large segments referenced by IndexSearcher in memory.
Key: LUCENE-5800
URL: https://issues.apache.org/jira/browse/LUCENE-5800
Project: Lucene - Core
Issue Type: Bug
Components: core/store
Reporter: Zhijiang Wang
When using NRTCachingDirectory, if the new created segment is in compound
format, in the method of createOutput(String name,IOContext context), the real
context is not used and uses IOContext.DEFAULT instead. So the
estimatedMergeBytes or estimatedSegmentSize will always be smaller than
maxMergeSizeBytes,maxCachedBytes, resulting in new created compound segment is
always in cache(RAMDirectory). And these new large segments created by merging
will be referenced by ReaderPool in the IndexWriter when using NRT feature,
resulting in much memory used in process and actually these referenced large
segments has already been sync to disk when commit.
--
This message was sent by Atlassian JIRA
(v6.2#6252)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]