Another idea would be to modify the two directory implementations to rethrow FNFE on errors? But clearly, we have no statement anywhere in the docs what exception Directory has to throw when a file was not found. With the current contract FooBarFSDirectory may throw ChuckNorrisNotFoundException as long as it extends IOException.
Uwe ----- Uwe Schindler H.-H.-Meier-Allee 63, D-28213 Bremen <http://www.thetaphi.de/> http://www.thetaphi.de eMail: [email protected] From: Robert Muir [mailto:[email protected]] Sent: Sunday, June 09, 2013 5:03 PM To: [email protected] Subject: Re: [JENKINS] Lucene-Solr-NightlyTests-trunk - Build # 285 - Failure we need to be careful about this. all code with special handling for FNFE needs to be reviewed!!!! please open an issue On Sun, Jun 9, 2013 at 10:52 AM, Uwe Schindler <[email protected]> wrote: That is exactly the reason! NIOFSDir and MMapDir in trunk use the new Java 7 method and no longer open a RandomAccessFile. The new Channels.newFileChannel() methods throw different exceptions (no obvious why, but they do). In general, to work also with completely different implementations of Directory, the test should only check for IOEx maybe. Uwe ----- Uwe Schindler H.-H.-Meier-Allee 63, D-28213 Bremen <http://www.thetaphi.de/> http://www.thetaphi.de eMail: [email protected] From: Shai Erera [mailto:[email protected]] Sent: Sunday, June 09, 2013 4:09 PM To: [email protected] Subject: Re: [JENKINS] Lucene-Solr-NightlyTests-trunk - Build # 285 - Failure There is a difference in NIOFSDir in trunk and 4x, so not sure if we can hit it on 4.x. Failed to reproduce on 4x so far (running w/ 1.7). So maybe this is a trunk thing only... Shai On Sun, Jun 9, 2013 at 5:03 PM, Shai Erera <[email protected]> wrote: The problem is that the test expects to hit FileNotFoundException, but java.nio in Java7 throws NoSuchFileException. I fixed the test in trunk only as this exception exists only in 1.7 and 4.x compiles against 1.6. Does anybody know if we can hit this exception on the 4.x builds? Do we run them w/ 1.7? If so, I guess a more generic fix is needed which catches IOE and then checks if it's an instanceof FNFE, or uses Class.forName for NSFE? Why did they invent a new exception class in the first place !? Shai On Sun, Jun 9, 2013 at 1:08 PM, Apache Jenkins Server <[email protected]> wrote: Build: https://builds.apache.org/job/Lucene-Solr-NightlyTests-trunk/285/ 1 tests failed. REGRESSION: org.apache.lucene.replicator.LocalReplicatorTest.testObtainMissingFile Error Message: /usr/home/hudson/hudson-slave/workspace/Lucene-Solr-NightlyTests-trunk/lucene/build/replicator/test/J1/index32663266tmp/madeUpFile Stack Trace: java.nio.file.NoSuchFileException: /usr/home/hudson/hudson-slave/workspace/Lucene-Solr-NightlyTests-trunk/lucene/build/replicator/test/J1/index32663266tmp/madeUpFile at __randomizedtesting.SeedInfo.seed([2AEDA7739733A92D:CEE0D362F60160A]:0) at sun.nio.fs.UnixException.translateToIOException(UnixException.java:86) at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102) at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107) at sun.nio.fs.UnixFileSystemProvider.newFileChannel(UnixFileSystemProvider.java:176) at java.nio.channels.FileChannel.open(FileChannel.java:287) at java.nio.channels.FileChannel.open(FileChannel.java:334) at org.apache.lucene.store.NIOFSDirectory.openInput(NIOFSDirectory.java:81) at org.apache.lucene.store.RateLimitedDirectoryWrapper.openInput(RateLimitedDirectoryWrapper.java:93) at org.apache.lucene.store.BaseDirectoryWrapper.openInput(BaseDirectoryWrapper.java:110) at org.apache.lucene.replicator.IndexRevision.open(IndexRevision.java:136) at org.apache.lucene.replicator.LocalReplicator.obtainFile(LocalReplicator.java:198) at org.apache.lucene.replicator.LocalReplicatorTest.testObtainMissingFile(LocalReplicatorTest.java:155) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:601) at com.carrotsearch.randomizedtesting.RandomizedRunner.invoke(RandomizedRunner.java:1559) at com.carrotsearch.randomizedtesting.RandomizedRunner.access$600(RandomizedRunner.java:79) at com.carrotsearch.randomizedtesting.RandomizedRunner$6.evaluate(RandomizedRunner.java:737) at com.carrotsearch.randomizedtesting.RandomizedRunner$7.evaluate(RandomizedRunner.java:773) at com.carrotsearch.randomizedtesting.RandomizedRunner$8.evaluate(RandomizedRunner.java:787) at org.apache.lucene.util.TestRuleSetupTeardownChained$1.evaluate(TestRuleSetupTeardownChained.java:50) at org.apache.lucene.util.TestRuleFieldCacheSanity$1.evaluate(TestRuleFieldCacheSanity.java:51) at org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:46) at com.carrotsearch.randomizedtesting.rules.SystemPropertiesInvariantRule$1.evaluate(SystemPropertiesInvariantRule.java:55) at org.apache.lucene.util.TestRuleThreadAndTestName$1.evaluate(TestRuleThreadAndTestName.java:49) at org.apache.lucene.util.TestRuleIgnoreAfterMaxFailures$1.evaluate(TestRuleIgnoreAfterMaxFailures.java:70) at org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:48) at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36) at com.carrotsearch.randomizedtesting.ThreadLeakControl$StatementRunner.run(ThreadLeakControl.java:358) at com.carrotsearch.randomizedtesting.ThreadLeakControl.forkTimeoutingTask(ThreadLeakControl.java:782) at com.carrotsearch.randomizedtesting.ThreadLeakControl$3.evaluate(ThreadLeakControl.java:442) at com.carrotsearch.randomizedtesting.RandomizedRunner.runSingleTest(RandomizedRunner.java:746) at com.carrotsearch.randomizedtesting.RandomizedRunner$3.evaluate(RandomizedRunner.java:648) at com.carrotsearch.randomizedtesting.RandomizedRunner$4.evaluate(RandomizedRunner.java:682) at com.carrotsearch.randomizedtesting.RandomizedRunner$5.evaluate(RandomizedRunner.java:693) at org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:46) at org.apache.lucene.util.TestRuleStoreClassName$1.evaluate(TestRuleStoreClassName.java:42) at com.carrotsearch.randomizedtesting.rules.SystemPropertiesInvariantRule$1.evaluate(SystemPropertiesInvariantRule.java:55) at com.carrotsearch.randomizedtesting.rules.NoShadowingOrOverridesOnMethodsRule$1.evaluate(NoShadowingOrOverridesOnMethodsRule.java:39) at com.carrotsearch.randomizedtesting.rules.NoShadowingOrOverridesOnMethodsRule$1.evaluate(NoShadowingOrOverridesOnMethodsRule.java:39) at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36) at org.apache.lucene.util.TestRuleAssertionsRequired$1.evaluate(TestRuleAssertionsRequired.java:43) at org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:48) at org.apache.lucene.util.TestRuleIgnoreAfterMaxFailures$1.evaluate(TestRuleIgnoreAfterMaxFailures.java:70) at org.apache.lucene.util.TestRuleIgnoreTestSuites$1.evaluate(TestRuleIgnoreTestSuites.java:55) at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36) at com.carrotsearch.randomizedtesting.ThreadLeakControl$StatementRunner.run(ThreadLeakControl.java:358) at java.lang.Thread.run(Thread.java:722) Build Log: [...truncated 8103 lines...] [junit4:junit4] Suite: org.apache.lucene.replicator.LocalReplicatorTest [junit4:junit4] 2> NOTE: download the large Jenkins line-docs file by running 'ant get-jenkins-line-docs' in the lucene directory. [junit4:junit4] 2> NOTE: reproduce with: ant test -Dtestcase=LocalReplicatorTest -Dtests.method=testObtainMissingFile -Dtests.seed=2AEDA7739733A92D -Dtests.multiplier=2 -Dtests.nightly=true -Dtests.slow=true -Dtests.linedocsfile=/home/hudson/lucene-data/enwiki.random.lines.txt -Dtests.locale=sv_SE -Dtests.timezone=America/Monterrey -Dtests.file.encoding=UTF-8 [junit4:junit4] ERROR 0.42s J1 | LocalReplicatorTest.testObtainMissingFile <<< [junit4:junit4] > Throwable #1: java.nio.file.NoSuchFileException: /usr/home/hudson/hudson-slave/workspace/Lucene-Solr-NightlyTests-trunk/lucene/build/replicator/test/J1/index32663266tmp/madeUpFile [junit4:junit4] > at __randomizedtesting.SeedInfo.seed([2AEDA7739733A92D:CEE0D362F60160A]:0) [junit4:junit4] > at sun.nio.fs.UnixException.translateToIOException(UnixException.java:86) [junit4:junit4] > at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102) [junit4:junit4] > at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107) [junit4:junit4] > at sun.nio.fs.UnixFileSystemProvider.newFileChannel(UnixFileSystemProvider.java:176) [junit4:junit4] > at java.nio.channels.FileChannel.open(FileChannel.java:287) [junit4:junit4] > at java.nio.channels.FileChannel.open(FileChannel.java:334) [junit4:junit4] > at org.apache.lucene.store.NIOFSDirectory.openInput(NIOFSDirectory.java:81) [junit4:junit4] > at org.apache.lucene.store.RateLimitedDirectoryWrapper.openInput(RateLimitedDirectoryWrapper.java:93) [junit4:junit4] > at org.apache.lucene.store.BaseDirectoryWrapper.openInput(BaseDirectoryWrapper.java:110) [junit4:junit4] > at org.apache.lucene.replicator.IndexRevision.open(IndexRevision.java:136) [junit4:junit4] > at org.apache.lucene.replicator.LocalReplicator.obtainFile(LocalReplicator.java:198) [junit4:junit4] > at org.apache.lucene.replicator.LocalReplicatorTest.testObtainMissingFile(LocalReplicatorTest.java:155) [junit4:junit4] > at java.lang.Thread.run(Thread.java:722) [junit4:junit4] 2> NOTE: test params are: codec=FastDecompressionCompressingStoredFields(storedFieldsFormat=CompressingStoredFieldsFormat(compressionMode=FAST_DECOMPRESSION, chunkSize=17), termVectorsFormat=CompressingTermVectorsFormat(compressionMode=FAST_DECOMPRESSION, chunkSize=17)), sim=RandomSimilarityProvider(queryNorm=false,coord=yes): {}, locale=sv_SE, timezone=America/Monterrey [junit4:junit4] 2> NOTE: FreeBSD 9.1-RELEASE-p3 amd64/Oracle Corporation 1.7.0_21 (64-bit)/cpus=16,threads=1,free=101822296,total=133431296 [junit4:junit4] 2> NOTE: All tests run in this JVM: [LocalReplicatorTest] [junit4:junit4] Completed on J1 in 4.27s, 10 tests, 1 error <<< FAILURES! [...truncated 28 lines...] BUILD FAILED /usr/home/hudson/hudson-slave/workspace/Lucene-Solr-NightlyTests-trunk/build.xml:392: The following error occurred while executing this line: /usr/home/hudson/hudson-slave/workspace/Lucene-Solr-NightlyTests-trunk/build.xml:365: The following error occurred while executing this line: /usr/home/hudson/hudson-slave/workspace/Lucene-Solr-NightlyTests-trunk/build.xml:39: The following error occurred while executing this line: /usr/home/hudson/hudson-slave/workspace/Lucene-Solr-NightlyTests-trunk/lucene/build.xml:554: The following error occurred while executing this line: /usr/home/hudson/hudson-slave/workspace/Lucene-Solr-NightlyTests-trunk/lucene/common-build.xml:1825: The following error occurred while executing this line: /usr/home/hudson/hudson-slave/workspace/Lucene-Solr-NightlyTests-trunk/lucene/module-build.xml:61: The following error occurred while executing this line: /usr/home/hudson/hudson-slave/workspace/Lucene-Solr-NightlyTests-trunk/lucene/common-build.xml:1240: The following error occurred while executing this line: /usr/home/hudson/hudson-slave/workspace/Lucene-Solr-NightlyTests-trunk/lucene/common-build.xml:884: There were test failures: 7 suites, 30 tests, 1 error Total time: 48 minutes 9 seconds Build step 'Invoke Ant' 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]
