[
https://issues.apache.org/jira/browse/LUCENE-2637?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12907212#action_12907212
]
Robert Muir commented on LUCENE-2637:
-------------------------------------
As mentioned on the list, i think this only fails on hudson because the test
uses FSDirectory.open, and somehow the issue only occurs with
*SimpleFSDirectory*, but not *NIOFSDirectory*
If i comment out FSDirectory's optimized copyBytes (LUCENE-2574), the test
passes every time.
So I think this is the root of the problem.
> TestIndexWriter.testRandomStoredFields randomly fails
> -----------------------------------------------------
>
> Key: LUCENE-2637
> URL: https://issues.apache.org/jira/browse/LUCENE-2637
> Project: Lucene - Java
> Issue Type: Bug
> Components: Tests
> Affects Versions: 4.0
> Reporter: Robert Muir
>
> see
> http://www.lucidimagination.com/search/document/36d2dbfc691909d5/bug_triggered_by_testindexwriter_testrandomstoredfields
> for background
> here are my steps to reproduce (most of the time, at least on windows):
> {noformat}
> 1. edit line 87 of TestIndexWriter to plugin the seed:
> random = newRandom(3312389322103990899L);
> 2. run this command:
> ant clean test-core -Dtestcase=TestIndexWriter
> -Dtestmethod=testRandomStoredFields -Dtests.iter=10
> -Dtests.codec="MockVariableIntBlock(29)"
> {noformat}
> I only set this up on trunk, it might affect 3x too (I feel like i have seen
> it, but i'm not sure and i didnt test yet)
> here are a few of the various types of fails i have seen:
> {noformat}
> [junit] Testsuite: org.apache.lucene.index.TestIndexWriter
> [junit] Testcase:
> testRandomStoredFields(org.apache.lucene.index.TestIndexWriter): Caused an
> ERROR
> [junit] Index: 4232, Size: 4
> [junit] java.lang.IndexOutOfBoundsException: Index: 4232, Size: 4
> [junit] at java.util.ArrayList.RangeCheck(ArrayList.java:547)
> [junit] at java.util.ArrayList.get(ArrayList.java:322)
> [junit] at
> org.apache.lucene.index.FieldInfos.fieldInfo(FieldInfos.java:264)
> [junit] at org.apache.lucene.index.FieldsReader.doc(FieldsReader.java:198)
> [junit] at
> org.apache.lucene.index.SegmentReader.document(SegmentReader.java:882)
> [junit] at
> org.apache.lucene.index.DirectoryReader.document(DirectoryReader.java:580)
> [junit] at
> org.apache.lucene.index.IndexReader.document(IndexReader.java:754)
> [junit] at
> org.apache.lucene.index.TestIndexWriter.testRandomStoredFields(TestIndexWriter.java:5212)
> [junit] at
> org.apache.lucene.util.LuceneTestCase.runBare(LuceneTestCase.java:397)
> [junit] at
> org.apache.lucene.util.LuceneTestCase.run(LuceneTestCase.java:389)
> [junit] Testcase:
> testRandomStoredFields(org.apache.lucene.index.TestIndexWriter): Caused an
> ERROR
> [junit] null
> [junit] java.lang.NullPointerException
> [junit] at
> org.apache.lucene.index.FieldsReader.addField(FieldsReader.java:310)
> [junit] at org.apache.lucene.index.FieldsReader.doc(FieldsReader.java:209)
> [junit] at
> org.apache.lucene.index.SegmentReader.document(SegmentReader.java:882)
> [junit] at
> org.apache.lucene.index.DirectoryReader.document(DirectoryReader.java:580)
> [junit] at
> org.apache.lucene.index.IndexReader.document(IndexReader.java:754)
> [junit] at
> org.apache.lucene.index.TestIndexWriter.testRandomStoredFields(TestIndexWriter.java:5212)
> [junit] at
> org.apache.lucene.util.LuceneTestCase.runBare(LuceneTestCase.java:397)
> [junit] at
> org.apache.lucene.util.LuceneTestCase.run(LuceneTestCase.java:389)
> [junit] Testcase:
> testRandomStoredFields(org.apache.lucene.index.TestIndexWriter): FAILED
> [junit] null
> [junit] junit.framework.AssertionFailedError
> [junit] at
> org.apache.lucene.util.LuceneTestCase.run(LuceneTestCase.java:389)
> [junit] at org.apache.lucene.index.FieldsReader.doc(FieldsReader.java:202)
> [junit] at
> org.apache.lucene.index.SegmentReader.document(SegmentReader.java:882)
> [junit] at
> org.apache.lucene.index.DirectoryReader.document(DirectoryReader.java:580)
> [junit] at
> org.apache.lucene.index.IndexReader.document(IndexReader.java:754)
> [junit] at
> org.apache.lucene.index.TestIndexWriter.testRandomStoredFields(TestIndexWriter.java:5212)
> [junit] at
> org.apache.lucene.util.LuceneTestCase.runBare(LuceneTestCase.java:397)
> [junit] Testcase:
> testRandomStoredFields(org.apache.lucene.index.TestIndexWriter): FAILED
> [junit] doc 16, field f3 is wrong expected:<nonsense unicode> but was
> <different nonsense unicode>
> [junit] junit.framework.ComparisonFailure: doc 16, field f3 is wrong
> expected: <nonsense unicode>
> but was <different nonsense unicode>
> [junit] at
> org.apache.lucene.index.TestIndexWriter.testRandomStoredFields(TestIndexWriter.java:5215)
> [junit] at
> org.apache.lucene.util.LuceneTestCase.runBare(LuceneTestCase.java:397)
> [junit] at
> org.apache.lucene.util.LuceneTestCase.run(LuceneTestCase.java:389)
> [junit]
> [junit] Testsuite: org.apache.lucene.index.TestIndexWriter
> [junit] Testcase:
> testRandomStoredFields(org.apache.lucene.index.TestIndexWriter): Caused an
> ERROR
> [junit] null
> [junit] java.lang.NegativeArraySizeException
> [junit] at
> org.apache.lucene.index.FieldsReader.addField(FieldsReader.java:305)
> [junit] at org.apache.lucene.index.FieldsReader.doc(FieldsReader.java:209)
> [junit] at
> org.apache.lucene.index.SegmentReader.document(SegmentReader.java:882)
> [junit] at
> org.apache.lucene.index.DirectoryReader.document(DirectoryReader.java:580)
> [junit] at
> org.apache.lucene.index.IndexReader.document(IndexReader.java:754)
> [junit] at
> org.apache.lucene.index.TestIndexWriter.testRandomStoredFields(TestIndexWriter.java:5212)
> [junit] at
> org.apache.lucene.util.LuceneTestCase.runBare(LuceneTestCase.java:397)
> [junit] at
> org.apache.lucene.util.LuceneTestCase.run(LuceneTestCase.java:389)
> [junit] Testsuite: org.apache.lucene.index.TestIndexWriter
> [junit] Testcase:
> testRandomStoredFields(org.apache.lucene.index.TestIndexWriter): Caused an
> ERROR
> [junit] read past EOF
> [junit] java.io.IOException: read past EOF
> [junit] at
> org.apache.lucene.store.BufferedIndexInput.readBytes(BufferedIndexInput.java:138)
> ...
> {noformat}
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]