Thanks Simon! Can you also fixup that confusing comment in DocValuesConsumer.merge? Ie if an exception is thrown, how are we ensuring finish/abort/close called...? Thanks.
Mike McCandless http://blog.mikemccandless.com On Wed, Jan 11, 2012 at 4:12 AM, Simon Willnauer <[email protected]> wrote: > I committed a fix for this. Seems this was a simple text problem. > > simon > > On Tue, Jan 10, 2012 at 6:27 PM, Michael McCandless > <[email protected]> wrote: >> I think we must be missing a try/finally somewhere... the test is >> pretty evil (throws random exceptions up during indexing). >> >> Hmm I see this comment in DocValuesConsumer.merge: >> >> // only finish if no exception is thrown! >> if (hasMerged) { >> finish(mergeState.mergedDocCount); >> } >> >> That finish closes the norms IndexOutput I think... so... does >> something else call finish (abort), higher up, on exception...? >> >> Mike McCandless >> >> http://blog.mikemccandless.com >> >> On Tue, Jan 10, 2012 at 11:49 AM, Robert Muir <[email protected]> wrote: >>> Doesn't reproduce for me. But .len is SimpleText's norms file. >>> >>> On Tue, Jan 10, 2012 at 11:39 AM, Apache Jenkins Server >>> <[email protected]> wrote: >>>> Build: https://builds.apache.org/job/Lucene-Solr-tests-only-trunk/12082/ >>>> >>>> 1 tests failed. >>>> REGRESSION: org.apache.lucene.index.TestTransactions.testTransactions >>>> >>>> Error Message: >>>> MockDirectoryWrapper: cannot close: there are still open files: {_3.len=1} >>>> >>>> Stack Trace: >>>> java.lang.RuntimeException: MockDirectoryWrapper: cannot close: there are >>>> still open files: {_3.len=1} >>>> at >>>> org.apache.lucene.store.MockDirectoryWrapper.close(MockDirectoryWrapper.java:545) >>>> at >>>> org.apache.lucene.index.TestTransactions.testTransactions(TestTransactions.java:242) >>>> at >>>> org.apache.lucene.util.LuceneTestCase$3$1.evaluate(LuceneTestCase.java:528) >>>> at >>>> org.apache.lucene.util.LuceneTestCaseRunner.runChild(LuceneTestCaseRunner.java:165) >>>> at >>>> org.apache.lucene.util.LuceneTestCaseRunner.runChild(LuceneTestCaseRunner.java:57) >>>> Caused by: java.lang.RuntimeException: unclosed IndexOutput: _3.len >>>> at >>>> org.apache.lucene.store.MockDirectoryWrapper.addFileHandle(MockDirectoryWrapper.java:469) >>>> at >>>> org.apache.lucene.store.MockDirectoryWrapper.createOutput(MockDirectoryWrapper.java:441) >>>> at >>>> org.apache.lucene.codecs.simpletext.SimpleTextNormsConsumer$NormsWriter.<init>(SimpleTextNormsConsumer.java:197) >>>> at >>>> org.apache.lucene.codecs.simpletext.SimpleTextNormsConsumer.getNormsWriter(SimpleTextNormsConsumer.java:179) >>>> at >>>> org.apache.lucene.codecs.simpletext.SimpleTextNormsConsumer$SimpleTextNormsDocValuesConsumer.finish(SimpleTextNormsConsumer.java:143) >>>> at >>>> org.apache.lucene.codecs.DocValuesConsumer.merge(DocValuesConsumer.java:97) >>>> at >>>> org.apache.lucene.codecs.PerDocConsumer.merge(PerDocConsumer.java:57) >>>> at >>>> org.apache.lucene.index.SegmentMerger.mergeNorms(SegmentMerger.java:358) >>>> at >>>> org.apache.lucene.index.SegmentMerger.merge(SegmentMerger.java:123) >>>> at >>>> org.apache.lucene.index.IndexWriter.mergeMiddle(IndexWriter.java:3630) >>>> at org.apache.lucene.index.IndexWriter.merge(IndexWriter.java:3258) >>>> at >>>> org.apache.lucene.index.ConcurrentMergeScheduler.doMerge(ConcurrentMergeScheduler.java:382) >>>> at >>>> org.apache.lucene.index.ConcurrentMergeScheduler$MergeThread.run(ConcurrentMergeScheduler.java:451) >>>> >>>> >>>> >>>> >>>> Build Log (for compile errors): >>>> [...truncated 1355 lines...] >>>> >>>> >>>> >>>> --------------------------------------------------------------------- >>>> To unsubscribe, e-mail: [email protected] >>>> For additional commands, e-mail: [email protected] >>>> >>> >>> >>> >>> -- >>> lucidimagination.com >>> >>> --------------------------------------------------------------------- >>> To unsubscribe, e-mail: [email protected] >>> For additional commands, e-mail: [email protected] >>> >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: [email protected] >> For additional commands, e-mail: [email protected] >> > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
