[ https://issues.apache.org/jira/browse/LUCENE-3463?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13118605#comment-13118605 ]
Robert Muir commented on LUCENE-3463: ------------------------------------- Hoss asked me some questions about my comment, so some more explanations of what I meant: First I think it would be great to add this annotation: its bogus how we assume() so much (and annoying from your ide when you randomly get a green light sometimes and think you fixed your problem but you didnt). But the configuration of Codec (and i think other things, Locale, Similarity, ...) is currently across the whole class for consistency, which means its pulling from a per-class random seed. Because of this I think it would be "tricky" for the annotation to properly work at the test method level if we want the random seeds to always reproduce failures... I'm not saying its impossible... So my idea of the simplest solution would be for the annotation to only work at the whole class level... I think for practical purposes this is all we need to fix these problems and remove these assume()s. > Jenkins trunk tests (nightly only) fail quite often with OOM in Automaton/FST > tests > ----------------------------------------------------------------------------------- > > Key: LUCENE-3463 > URL: https://issues.apache.org/jira/browse/LUCENE-3463 > Project: Lucene - Java > Issue Type: Bug > Affects Versions: 4.0 > Reporter: Uwe Schindler > Fix For: 4.0 > > Attachments: LUCENE-3463.patch, LUCENE-3463.patch, LUCENE-3463.patch, > LUCENE-3463.patch > > > The nightly Job Lucene-trunk quite often fails with OOM (in several methods, > not always in the same test): > Example from last night (this time a huge Automaton): > {noformat} > [junit] java.lang.OutOfMemoryError: Java heap space > [junit] Dumping heap to > /home/hudson/hudson-slave/workspace/Lucene-trunk/heapdumps/java_pid38855.hprof > ... > [junit] Heap dump file created [86965954 bytes in 1.186 secs] > [junit] Testsuite: org.apache.lucene.index.TestTermsEnum > [junit] Testcase: testIntersectRandom(org.apache.lucene.index.TestTermsEnum): > Caused an ERROR > [junit] Java heap space > [junit] java.lang.OutOfMemoryError: Java heap space > [junit] at > org.apache.lucene.util.automaton.RunAutomaton.<init>(RunAutomaton.java:128) > [junit] at > org.apache.lucene.util.automaton.ByteRunAutomaton.<init>(ByteRunAutomaton.java:28) > [junit] at > org.apache.lucene.util.automaton.CompiledAutomaton.<init>(CompiledAutomaton.java:134) > [junit] at > org.apache.lucene.index.TestTermsEnum.testIntersectRandom(TestTermsEnum.java:266) > [junit] at > org.apache.lucene.util.LuceneTestCase$2$1.evaluate(LuceneTestCase.java:611) > [junit] at > org.apache.lucene.util.LuceneTestCaseRunner.runChild(LuceneTestCaseRunner.java:148) > [junit] at > org.apache.lucene.util.LuceneTestCaseRunner.runChild(LuceneTestCaseRunner.java:50) > [junit] > [junit] > [junit] Tests run: 6, Failures: 0, Errors: 1, Time elapsed: 11.699 sec > {noformat} > Other traces: > {noformat} > [junit] Testsuite: org.apache.lucene.util.fst.TestFSTs > [junit] Testcase: testRealTerms(org.apache.lucene.util.fst.TestFSTs): Caused > an ERROR > [junit] Java heap space > [junit] java.lang.OutOfMemoryError: Java heap space > [junit] at org.apache.lucene.util.ArrayUtil.grow(ArrayUtil.java:338) > [junit] at > org.apache.lucene.util.fst.FST$BytesWriter.writeBytes(FST.java:927) > [junit] at > org.apache.lucene.util.fst.ByteSequenceOutputs.write(ByteSequenceOutputs.java:113) > [junit] at > org.apache.lucene.util.fst.ByteSequenceOutputs.write(ByteSequenceOutputs.java:32) > [junit] at org.apache.lucene.util.fst.FST.addNode(FST.java:451) > [junit] at org.apache.lucene.util.fst.NodeHash.add(NodeHash.java:122) > [junit] at > org.apache.lucene.util.fst.Builder.compileNode(Builder.java:180) > [junit] at org.apache.lucene.util.fst.Builder.finish(Builder.java:495) > [junit] at > org.apache.lucene.index.codecs.memory.MemoryCodec$TermsWriter.finish(MemoryCodec.java:232) > [junit] at > org.apache.lucene.index.FreqProxTermsWriterPerField.flush(FreqProxTermsWriterPerField.java:414) > [junit] at > org.apache.lucene.index.FreqProxTermsWriter.flush(FreqProxTermsWriter.java:92) > [junit] at org.apache.lucene.index.TermsHash.flush(TermsHash.java:117) > [junit] at > org.apache.lucene.index.DocInverter.flush(DocInverter.java:80) > [junit] at > org.apache.lucene.index.DocFieldProcessor.flush(DocFieldProcessor.java:78) > [junit] at > org.apache.lucene.index.DocumentsWriterPerThread.flush(DocumentsWriterPerThread.java:472) > [junit] at > org.apache.lucene.index.DocumentsWriter.doFlush(DocumentsWriter.java:420) > [junit] at > org.apache.lucene.index.DocumentsWriter.flushAllThreads(DocumentsWriter.java:568) > [junit] at > org.apache.lucene.index.IndexWriter.getReader(IndexWriter.java:366) > [junit] at > org.apache.lucene.index.IndexReader.open(IndexReader.java:317) > [junit] at > org.apache.lucene.util.fst.TestFSTs.testRealTerms(TestFSTs.java:1034) > [junit] at > org.apache.lucene.util.LuceneTestCase$2$1.evaluate(LuceneTestCase.java:611) > {noformat} > or: > {noformat} > [junit] Testsuite: org.apache.lucene.util.automaton.TestCompiledAutomaton > [junit] Testcase: > testRandom(org.apache.lucene.util.automaton.TestCompiledAutomaton): Caused an > ERROR > [junit] Java heap space > [junit] java.lang.OutOfMemoryError: Java heap space > [junit] at > org.apache.lucene.util.automaton.RunAutomaton.<init>(RunAutomaton.java:128) > [junit] at > org.apache.lucene.util.automaton.ByteRunAutomaton.<init>(ByteRunAutomaton.java:28) > [junit] at > org.apache.lucene.util.automaton.CompiledAutomaton.<init>(CompiledAutomaton.java:134) > [junit] at > org.apache.lucene.util.automaton.TestCompiledAutomaton.build(TestCompiledAutomaton.java:39) > [junit] at > org.apache.lucene.util.automaton.TestCompiledAutomaton.testTerms(TestCompiledAutomaton.java:55) > [junit] at > org.apache.lucene.util.automaton.TestCompiledAutomaton.testRandom(TestCompiledAutomaton.java:101) > [junit] at > org.apache.lucene.util.LuceneTestCase$2$1.evaluate(LuceneTestCase.java:611) > [junit] at > org.apache.lucene.util.LuceneTestCaseRunner.runChild(LuceneTestCaseRunner.java:148) > [junit] at > org.apache.lucene.util.LuceneTestCaseRunner.runChild(LuceneTestCaseRunner.java:50) > {noformat} > Almost every nightly test fails, history: > [https://builds.apache.org/job/Lucene-trunk] > We should maybe raise the max heap space or reduce doc counts/... -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa 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