I was interested in reproducing this, but i never could. I don't think its too big a deal as people can just "not use jrockit" and use a regular jdk instead.
We should come up with a set of patterns for broken JVMS that can cause index corruption, detect them in e.g. Constants.java and throw ThreadDeath and refuse to execute at all! On Tue, Jul 31, 2012 at 4:56 AM, Uwe Schindler <[email protected]> wrote: > Hi, > > I did some further testing with JRockit: > > - I was wrong, the problem is not easy to reproduce on my server; it behaves > identical to what Robert tested on his machine. It might be some lucky time > when I tried for the last time. So I don't think it's processor specific. > - You have to run the whole lucene-core test suite, otherwise it does not > fail. It is also important to limit to 1 or 2 parallel JVMs, otherwise the > running JDKs do too less to trigger the bug > - Use -Dtests.multiplier=3, otherwise it does not always reproduce > - The test fails with 32 and 64 bit. > - It cannot be verified without optimizer, as JRockit has no -Xint or any > other way to disable optimizer > > To reproduce, use the following (in lucene/core): > > $ JAVA_HOME=/path/to/jrockit-jdk1.6.0_33-R28.2.4-4.1.0 ant -Dtests.jvms=2 > -Dtests.multiplier=3 -Dtests.seed=E0BB421A03A7B634 test > > It also fails without this seed; this is just to be sure! > > ----- > Uwe Schindler > H.-H.-Meier-Allee 63, D-28213 Bremen > http://www.thetaphi.de > eMail: [email protected] > > >> -----Original Message----- >> From: Uwe Schindler [mailto:[email protected]] >> Sent: Tuesday, July 31, 2012 8:38 AM >> To: [email protected] >> Subject: RE: [JENKINS] Lucene-Solr-trunk-Linux (64bit/jrockit-jdk1.6.0_33- >> R28.2.4-4.1.0) - Build # 47 - Failure! >> >> We have again JRockit JVM bug, I will wait for the 32 bit version - just to >> see if >> happens there, too. Robert tested this on his CPU, no failure, on this >> Intel(R) >> Xeon(R) X3440 @ 2.53GHz it is 100% reproducible with any seed with no >> repetitions (in 64 bit JRockit JVM, 32 bit not yet tested). I will later try >> on >> Windows locally with other CPU. If it passes there, it looks like a >> processor- >> specific buggy optimization in JRockit, which is altogether slower on >> Lucene/Solr tests than Hotspot. >> >> ----- >> Uwe Schindler >> H.-H.-Meier-Allee 63, D-28213 Bremen >> http://www.thetaphi.de >> eMail: [email protected] >> >> >> > -----Original Message----- >> > From: Policeman Jenkins Server [mailto:[email protected]] >> > Sent: Tuesday, July 31, 2012 6:18 AM >> > To: [email protected] >> > Subject: [JENKINS] Lucene-Solr-trunk-Linux >> > (64bit/jrockit-jdk1.6.0_33-R28.2.4- >> > 4.1.0) - Build # 47 - Failure! >> > >> > Build: >> > http://jenkins.sd-datasolutions.de/job/Lucene-Solr-trunk-Linux/47/ >> > Java: 64bit/jrockit-jdk1.6.0_33-R28.2.4-4.1.0 >> > >> > 1 tests failed. >> > REGRESSION: >> > org.apache.lucene.index.TestPostingsOffsets.testBackwardsOffsets >> > >> > Error Message: >> > >> > >> > Stack Trace: >> > java.lang.AssertionError >> > at >> > >> __randomizedtesting.SeedInfo.seed([E06157DBE3C945D:7B16FD3A0BDAE520]: >> > 0) >> > at >> > org.apache.lucene.index.FreqProxTermsWriterPerField.writeOffsets(FreqP >> > roxT >> > ermsWriterPerField.java:157) >> > at >> > org.apache.lucene.index.FreqProxTermsWriterPerField.addTerm(FreqProxTe >> > rm >> > sWriterPerField.java:241) >> > at >> > >> org.apache.lucene.index.TermsHashPerField.add(TermsHashPerField.java:235) >> > at >> > org.apache.lucene.index.DocInverterPerField.processFields(DocInverterP >> > erField >> > .java:167) >> > at >> > org.apache.lucene.index.DocFieldProcessor.processDocument(DocFieldProc >> > ess >> > or.java:305) >> > at >> > >> org.apache.lucene.index.DocumentsWriterPerThread.updateDocument(Docum >> > entsWriterPerThread.java:243) >> > at >> > >> org.apache.lucene.index.DocumentsWriter.updateDocument(DocumentsWriter >> > .java:375) >> > at >> > >> org.apache.lucene.index.IndexWriter.updateDocument(IndexWriter.java:1357) >> > at >> > org.apache.lucene.index.IndexWriter.addDocument(IndexWriter.java:1108) >> > at >> > >> org.apache.lucene.index.RandomIndexWriter.addDocument(RandomIndexWrit >> > er.java:186) >> > at >> > >> org.apache.lucene.index.RandomIndexWriter.addDocument(RandomIndexWrit >> > er.java:146) >> > at >> > org.apache.lucene.index.TestPostingsOffsets.checkTokens(TestPostingsOf >> > fsets.j >> > ava:491) >> > at >> > org.apache.lucene.index.TestPostingsOffsets.testBackwardsOffsets(TestP >> > ostings >> > Offsets.java:436) >> > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >> > at >> > >> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java: >> > 39) >> > at >> > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccess >> > orI >> > mpl.java:25) >> > at java.lang.reflect.Method.invoke(Method.java:597) >> > at >> > >> com.carrotsearch.randomizedtesting.RandomizedRunner.invoke(RandomizedR >> > u >> > nner.java:1995) >> > at >> > >> com.carrotsearch.randomizedtesting.RandomizedRunner.access$1100(Random >> > izedRunner.java:132) >> > at >> > >> com.carrotsearch.randomizedtesting.RandomizedRunner$6.evaluate(Randomi >> > z >> > edRunner.java:819) >> > at >> > >> com.carrotsearch.randomizedtesting.RandomizedRunner$7.evaluate(Randomi >> > z >> > edRunner.java:878) >> > at >> > >> com.carrotsearch.randomizedtesting.RandomizedRunner$8.evaluate(Randomi >> > z >> > edRunner.java:891) >> > at >> > org.apache.lucene.util.TestRuleSetupTeardownChained$1.evaluate(TestRul >> > eSet >> > upTeardownChained.java:50) >> > at >> > org.apache.lucene.util.TestRuleFieldCacheSanity$1.evaluate(TestRuleFie >> > ldCach >> > eSanity.java:32) >> > at >> > org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBefo >> > reAfte >> > rRule.java:45) >> > at >> > com.carrotsearch.randomizedtesting.rules.SystemPropertiesInvariantRule >> > $1.ev >> > aluate(SystemPropertiesInvariantRule.java:55) >> > at >> > org.apache.lucene.util.TestRuleReportUncaughtExceptions$1.evaluate(Tes >> > tRule >> > ReportUncaughtExceptions.java:68) >> > at >> > org.apache.lucene.util.TestRuleThreadAndTestName$1.evaluate(TestRuleTh >> > rea >> > dAndTestName.java:48) >> > at >> > org.apache.lucene.util.TestRuleIgnoreAfterMaxFailures$1.evaluate(TestR >> > uleIgn >> > oreAfterMaxFailures.java:70) >> > at >> > org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFail >> > ure.ja >> > va:48) >> > at >> > com.carrotsearch.randomizedtesting.RandomizedRunner.runSingleTest(Rand >> > o >> > mizedRunner.java:825) >> > at >> > >> com.carrotsearch.randomizedtesting.RandomizedRunner.access$700(Randomi >> > z >> > edRunner.java:132) >> > at >> > >> com.carrotsearch.randomizedtesting.RandomizedRunner$3$1.run(Randomized >> > Runner.java:671) >> > at >> > >> com.carrotsearch.randomizedtesting.RandomizedRunner$3.evaluate(Randomi >> > z >> > edRunner.java:697) >> > at >> > >> com.carrotsearch.randomizedtesting.RandomizedRunner$4.evaluate(Randomi >> > z >> > edRunner.java:737) >> > at >> > >> com.carrotsearch.randomizedtesting.RandomizedRunner$5.evaluate(Randomi >> > z >> > edRunner.java:747) >> > at >> > org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBefo >> > reAfte >> > rRule.java:45) >> > at >> > org.apache.lucene.util.TestRuleReportUncaughtExceptions$1.evaluate(Tes >> > tRule >> > ReportUncaughtExceptions.java:68) >> > at >> > org.apache.lucene.util.TestRuleStoreClassName$1.evaluate(TestRuleStore >> > Class >> > Name.java:38) >> > at >> > com.carrotsearch.randomizedtesting.rules.SystemPropertiesInvariantRule >> > $1.ev >> > aluate(SystemPropertiesInvariantRule.java:55) >> > at >> > org.apache.lucene.util.TestRuleNoInstanceHooksOverrides$1.evaluate(Tes >> > tRule >> > NoInstanceHooksOverrides.java:54) >> > at >> > org.apache.lucene.util.TestRuleNoStaticHooksShadowing$1.evaluate(TestR >> > uleN >> > oStaticHooksShadowing.java:53) >> > at >> > org.apache.lucene.util.TestRuleAssertionsRequired$1.evaluate(TestRuleA >> > ssertio >> > nsRequired.java:37) >> > at >> > org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFail >> > ure.ja >> > va:48) >> > at >> > org.apache.lucene.util.TestRuleIgnoreAfterMaxFailures$1.evaluate(TestR >> > uleIgn >> > oreAfterMaxFailures.java:70) >> > at >> > org.apache.lucene.util.TestRuleIgnoreTestSuites$1.evaluate(TestRuleIgn >> > oreTest >> > Suites.java:56) >> > at >> > com.carrotsearch.randomizedtesting.RandomizedRunner.runSuite(Randomize >> > d >> > Runner.java:605) >> > at >> > >> com.carrotsearch.randomizedtesting.RandomizedRunner.access$400(Randomi >> > z >> > edRunner.java:132) >> > at >> > >> com.carrotsearch.randomizedtesting.RandomizedRunner$2.run(RandomizedRu >> > nner.java:551) >> > >> > >> > >> > >> > Build Log: >> > [...truncated 647 lines...] >> > [junit4:junit4] Suite: org.apache.lucene.index.TestPostingsOffsets >> > [junit4:junit4] FAILURE 0.02s J1 | TestPostingsOffsets.testBackwardsOffsets >> > [junit4:junit4] > Throwable #1: java.lang.AssertionError >> > [junit4:junit4] > at >> > >> __randomizedtesting.SeedInfo.seed([E06157DBE3C945D:7B16FD3A0BDAE520]: >> > 0) >> > [junit4:junit4] > at >> > org.apache.lucene.index.FreqProxTermsWriterPerField.writeOffsets(FreqP >> > roxT >> > ermsWriterPerField.java:157) >> > [junit4:junit4] > at >> > org.apache.lucene.index.FreqProxTermsWriterPerField.addTerm(FreqProxTe >> > rm >> > sWriterPerField.java:241) >> > [junit4:junit4] > at >> > >> org.apache.lucene.index.TermsHashPerField.add(TermsHashPerField.java:235) >> > [junit4:junit4] > at >> > org.apache.lucene.index.DocInverterPerField.processFields(DocInverterP >> > erField >> > .java:167) >> > [junit4:junit4] > at >> > org.apache.lucene.index.DocFieldProcessor.processDocument(DocFieldProc >> > ess >> > or.java:305) >> > [junit4:junit4] > at >> > >> org.apache.lucene.index.DocumentsWriterPerThread.updateDocument(Docum >> > entsWriterPerThread.java:243) >> > [junit4:junit4] > at >> > >> org.apache.lucene.index.DocumentsWriter.updateDocument(DocumentsWriter >> > .java:375) >> > [junit4:junit4] > at >> > >> org.apache.lucene.index.IndexWriter.updateDocument(IndexWriter.java:1357) >> > [junit4:junit4] > at >> > org.apache.lucene.index.IndexWriter.addDocument(IndexWriter.java:1108) >> > [junit4:junit4] > at >> > >> org.apache.lucene.index.RandomIndexWriter.addDocument(RandomIndexWrit >> > er.java:186) >> > [junit4:junit4] > at >> > >> org.apache.lucene.index.RandomIndexWriter.addDocument(RandomIndexWrit >> > er.java:146) >> > [junit4:junit4] > at >> > org.apache.lucene.index.TestPostingsOffsets.checkTokens(TestPostingsOf >> > fsets.j >> > ava:491) >> > [junit4:junit4] > at >> > org.apache.lucene.index.TestPostingsOffsets.testBackwardsOffsets(TestP >> > ostings >> > Offsets.java:436) >> > [junit4:junit4] > at >> > sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >> > [junit4:junit4] > at >> > >> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java: >> > 39) >> > [junit4:junit4] > at >> > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccess >> > orI >> > mpl.java:25) >> > [junit4:junit4] > at >> > java.lang.reflect.Method.invoke(Method.java:597) >> > [junit4:junit4] > at >> > >> com.carrotsearch.randomizedtesting.RandomizedRunner.invoke(RandomizedR >> > u >> > nner.java:1995) >> > [junit4:junit4] > at >> > >> com.carrotsearch.randomizedtesting.RandomizedRunner.access$1100(Random >> > izedRunner.java:132) >> > [junit4:junit4] > at >> > >> com.carrotsearch.randomizedtesting.RandomizedRunner$6.evaluate(Randomi >> > z >> > edRunner.java:819) >> > [junit4:junit4] > at >> > >> com.carrotsearch.randomizedtesting.RandomizedRunner$7.evaluate(Randomi >> > z >> > edRunner.java:878) >> > [junit4:junit4] > at >> > >> com.carrotsearch.randomizedtesting.RandomizedRunner$8.evaluate(Randomi >> > z >> > edRunner.java:891) >> > [junit4:junit4] > at >> > org.apache.lucene.util.TestRuleSetupTeardownChained$1.evaluate(TestRul >> > eSet >> > upTeardownChained.java:50) >> > [junit4:junit4] > at >> > org.apache.lucene.util.TestRuleFieldCacheSanity$1.evaluate(TestRuleFie >> > ldCach >> > eSanity.java:32) >> > [junit4:junit4] > at >> > org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBefo >> > reAfte >> > rRule.java:45) >> > [junit4:junit4] > at >> > com.carrotsearch.randomizedtesting.rules.SystemPropertiesInvariantRule >> > $1.ev >> > aluate(SystemPropertiesInvariantRule.java:55) >> > [junit4:junit4] > at >> > org.apache.lucene.util.TestRuleReportUncaughtExceptions$1.evaluate(Tes >> > tRule >> > ReportUncaughtExceptions.java:68) >> > [junit4:junit4] > at >> > org.apache.lucene.util.TestRuleThreadAndTestName$1.evaluate(TestRuleTh >> > rea >> > dAndTestName.java:48) >> > [junit4:junit4] > at >> > org.apache.lucene.util.TestRuleIgnoreAfterMaxFailures$1.evaluate(TestR >> > uleIgn >> > oreAfterMaxFailures.java:70) >> > [junit4:junit4] > at >> > org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFail >> > ure.ja >> > va:48) >> > [junit4:junit4] > at >> > com.carrotsearch.randomizedtesting.RandomizedRunner.runSingleTest(Rand >> > o >> > mizedRunner.java:825) >> > [junit4:junit4] > at >> > >> com.carrotsearch.randomizedtesting.RandomizedRunner.access$700(Randomi >> > z >> > edRunner.java:132) >> > [junit4:junit4] > at >> > >> com.carrotsearch.randomizedtesting.RandomizedRunner$3$1.run(Randomized >> > Runner.java:671) >> > [junit4:junit4] > at >> > >> com.carrotsearch.randomizedtesting.RandomizedRunner$3.evaluate(Randomi >> > z >> > edRunner.java:697) >> > [junit4:junit4] > at >> > >> com.carrotsearch.randomizedtesting.RandomizedRunner$4.evaluate(Randomi >> > z >> > edRunner.java:737) >> > [junit4:junit4] > at >> > >> com.carrotsearch.randomizedtesting.RandomizedRunner$5.evaluate(Randomi >> > z >> > edRunner.java:747) >> > [junit4:junit4] > at >> > org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBefo >> > reAfte >> > rRule.java:45) >> > [junit4:junit4] > at >> > org.apache.lucene.util.TestRuleReportUncaughtExceptions$1.evaluate(Tes >> > tRule >> > ReportUncaughtExceptions.java:68) >> > [junit4:junit4] > at >> > org.apache.lucene.util.TestRuleStoreClassName$1.evaluate(TestRuleStore >> > Class >> > Name.java:38) >> > [junit4:junit4] > at >> > com.carrotsearch.randomizedtesting.rules.SystemPropertiesInvariantRule >> > $1.ev >> > aluate(SystemPropertiesInvariantRule.java:55) >> > [junit4:junit4] > at >> > org.apache.lucene.util.TestRuleNoInstanceHooksOverrides$1.evaluate(Tes >> > tRule >> > NoInstanceHooksOverrides.java:54) >> > [junit4:junit4] > at >> > org.apache.lucene.util.TestRuleNoStaticHooksShadowing$1.evaluate(TestR >> > uleN >> > oStaticHooksShadowing.java:53) >> > [junit4:junit4] > at >> > org.apache.lucene.util.TestRuleAssertionsRequired$1.evaluate(TestRuleA >> > ssertio >> > nsRequired.java:37) >> > [junit4:junit4] > at >> > org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFail >> > ure.ja >> > va:48) >> > [junit4:junit4] > at >> > org.apache.lucene.util.TestRuleIgnoreAfterMaxFailures$1.evaluate(TestR >> > uleIgn >> > oreAfterMaxFailures.java:70) >> > [junit4:junit4] > at >> > org.apache.lucene.util.TestRuleIgnoreTestSuites$1.evaluate(TestRuleIgn >> > oreTest >> > Suites.java:56) >> > [junit4:junit4] > at >> > com.carrotsearch.randomizedtesting.RandomizedRunner.runSuite(Randomize >> > d >> > Runner.java:605) >> > [junit4:junit4] > at >> > >> com.carrotsearch.randomizedtesting.RandomizedRunner.access$400(Randomi >> > z >> > edRunner.java:132) >> > [junit4:junit4] > at >> > >> com.carrotsearch.randomizedtesting.RandomizedRunner$2.run(RandomizedRu >> > nner.java:551) >> > [junit4:junit4] > >> > [junit4:junit4] 2> NOTE: reproduce with: ant test - >> > Dtestcase=TestPostingsOffsets -Dtests.method=testBackwardsOffsets - >> > Dtests.seed=E06157DBE3C945D -Dtests.multiplier=3 -Dtests.slow=true - >> > Dtests.locale=ro -Dtests.timezone=US/Michigan -Dtests.file.encoding=UTF-8 >> > [junit4:junit4] 2> >> > [junit4:junit4] > (@AfterClass output) >> > [junit4:junit4] 2> NOTE: test params are: codec=Lucene40: >> > {content=PostingsFormat(name=Lucene40WithOrds), >> > oddeven=PostingsFormat(name=Lucene40WithOrds), >> > id=PostingsFormat(name=Asserting), body=Lucene40(minBlockSize=98 >> > maxBlockSize=249), numbers=Pulsing40(freqCutoff=16 minBlockSize=98 >> > maxBlockSize=249), content3=Pulsing40(freqCutoff=16 minBlockSize=98 >> > maxBlockSize=249), foo=Lucene40(minBlockSize=98 maxBlockSize=249)}, >> > sim=RandomSimilarityProvider(queryNorm=false,coord=false): >> > {content=DFR GL2, oddeven=LM Jelinek-Mercer(0.100000), body=DFR >> > I(F)B1, numbers=BM25(k1=1.2,b=0.75), content3=DFR I(n)Z(0.3), foo=IB >> > SPL-D2}, locale=ro, timezone=US/Michigan >> > [junit4:junit4] 2> NOTE: Linux 3.2.0-27-generic amd64/Oracle Corporation >> > 1.6.0_33 (64-bit)/cpus=8,threads=1,free=291332592,total=441733120 >> > [junit4:junit4] 2> NOTE: All tests run in this JVM: [TestPayloadSpans, >> > TestIndexInput, TestSegmentMerger, TestNoMergeScheduler, >> > TestDuelingCodecs, TestIndexWriterDelete, TestBasics, >> > TestDirectoryReader, TestForceMergeForever, TestOmitPositions, >> > TestPhrasePrefixQuery, TestUniqueTermCount, TestSubScorerFreqs, >> > TestLookaheadTokenFilter, TestFieldsReader, TestParallelTermEnum, >> > TestFieldValueFilter, TestSimpleSearchEquivalence, TestHugeRamFile, >> > TestNumericRangeQuery64, TestBytesRefHash, >> > TestMultiValuedNumericRangeQuery, TestAutomatonQuery, >> > TestMergeSchedulerExternal, TestStressNRT, TestNewestSegment, >> > TestMinimize, TestRecyclingByteBlockAllocator, TestVirtualMethod, >> > TestCachingTokenFilter, TestIndexWriterUnicode, TestTransactions, >> > TestIndexWriterMerging, TestComplexExplanations, >> > TestIndexWriterOnDiskFull, TestNamedSPILoader, Nested1, >> > TestAddIndexes, TestSentinelIntSet, TestNRTReaderWithThreads, >> > TestCrash, TestDocValuesTypeCompatibility, TestPerFieldPostingsFormat, >> > TestLock, TestThreadedForceMerge, TestDoc, TestDocTermOrds, >> > TestDocCount, TestIndexWriterConfig, TestLucene40PostingsReader, >> > TestTermVectorsWriter, TestSearchWithThreads, >> > TestMultiThreadTermVectors, TestCachingCollector, TestReuseDocsEnum, >> > TestNeverDelete, TestParallelAtomicReader, TestSimilarity, >> TestBinaryDocument, TestNRTManager, TestPackedInts, TestPostingsOffsets] >> > [junit4:junit4] 2> >> > [junit4:junit4] Completed on J1 in 2.44s, 11 tests, 1 failure <<< FAILURES! >> > >> > [...truncated 527 lines...] >> > BUILD FAILED >> > /mnt/ssd/jenkins/workspace/Lucene-Solr-trunk-Linux/checkout/build.xml:29: >> > The following error occurred while executing this line: >> > /mnt/ssd/jenkins/workspace/Lucene-Solr-trunk- >> > Linux/checkout/lucene/build.xml:50: The following error occurred while >> > executing this line: >> > /mnt/ssd/jenkins/workspace/Lucene-Solr-trunk- >> > Linux/checkout/lucene/common-build.xml:1095: The following error >> > occurred while executing this line: >> > /mnt/ssd/jenkins/workspace/Lucene-Solr-trunk- >> > Linux/checkout/lucene/common-build.xml:790: There were test failures: >> > 305 suites, 1723 tests, 1 failure, 14 ignored (12 assumptions) >> > >> > Total time: 9 minutes 51 seconds >> > Build step 'Execute shell' marked build as failure Archiving artifacts >> > Recording test results Email was triggered for: Failure Sending email >> > for trigger: Failure >> > >> >> >> >> --------------------------------------------------------------------- >> 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] > -- lucidimagination.com --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
