[ https://issues.apache.org/jira/browse/LUCENE-3092?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13034242#comment-13034242 ]
Simon Willnauer commented on LUCENE-3092: ----------------------------------------- mike I attached a patch to LUCENE-3100 and tested with the latest patch on this issue. The test randomly fails (after I close the IW in the test!) here is a trace: {noformat} junit-sequential: [junit] Testsuite: org.apache.lucene.store.TestNRTCachingDirectory [junit] Tests run: 1, Failures: 1, Errors: 0, Time elapsed: 5.16 sec [junit] [junit] ------------- Standard Error ----------------- [junit] NOTE: reproduce with: ant test -Dtestcase=TestNRTCachingDirectory -Dtestmethod=testNRTAndCommit -Dtests.seed=-753565914717395747:-1817581638532977526 [junit] NOTE: test params are: codec=RandomCodecProvider: {docid=SimpleText, body=MockFixedIntBlock(blockSize=1993), title=Pulsing(freqCutoff=3), titleTokenized=MockSep, date=SimpleText}, locale=ar_AE, timezone=America/Santa_Isabel [junit] NOTE: all tests run in this JVM: [junit] [TestNRTCachingDirectory] [junit] NOTE: Mac OS X 10.6.7 x86_64/Apple Inc. 1.6.0_24 (64-bit)/cpus=2,threads=1,free=46213552,total=85000192 [junit] ------------- ---------------- --------------- [junit] Testcase: testNRTAndCommit(org.apache.lucene.store.TestNRTCachingDirectory): FAILED [junit] limit=12 actual=16 [junit] junit.framework.AssertionFailedError: limit=12 actual=16 [junit] at org.apache.lucene.index.RandomIndexWriter.doRandomOptimize(RandomIndexWriter.java:165) [junit] at org.apache.lucene.index.RandomIndexWriter.close(RandomIndexWriter.java:199) [junit] at org.apache.lucene.store.TestNRTCachingDirectory.testNRTAndCommit(TestNRTCachingDirectory.java:179) [junit] at org.apache.lucene.util.LuceneTestCase$LuceneTestCaseRunner.runChild(LuceneTestCase.java:1282) [junit] at org.apache.lucene.util.LuceneTestCase$LuceneTestCaseRunner.runChild(LuceneTestCase.java:1211) [junit] [junit] [junit] Test org.apache.lucene.store.TestNRTCachingDirectory FAILED {noformat} > NRTCachingDirectory, to buffer small segments in a RAMDir > --------------------------------------------------------- > > Key: LUCENE-3092 > URL: https://issues.apache.org/jira/browse/LUCENE-3092 > Project: Lucene - Java > Issue Type: Improvement > Components: core/store > Reporter: Michael McCandless > Priority: Minor > Fix For: 3.2, 4.0 > > Attachments: LUCENE-3092-listener.patch, LUCENE-3092.patch, > LUCENE-3092.patch, LUCENE-3092.patch > > > I created this simply Directory impl, whose goal is reduce IO > contention in a frequent reopen NRT use case. > The idea is, when reopening quickly, but not indexing that much > content, you wind up with many small files created with time, that can > possibly stress the IO system eg if merges, searching are also > fighting for IO. > So, NRTCachingDirectory puts these newly created files into a RAMDir, > and only when they are merged into a too-large segment, does it then > write-through to the real (delegate) directory. > This lets you spend some RAM to reduce I0. -- 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