Looks like Guava's ClassPath helper wasn't tested on Windows, after all (it works on Unix, of course).
This ClassPath class is manually shaded from guava-14.0.1 in order to not require (yet to allow) users to run guava > 11.0.2 because guava-11.0.2 is what a lot of Hadoop components bundle. You could try replacing that manually shaded class with a version from guava-15 and see it that helps. Before doing so I'd recommend checking if ClassPath.from() from vanilla guava-15 blows up on windows path conventions. Let me know your finding, Wolfgang. On Oct 23, 2013, at 7:39 PM, Roshan Naik wrote: > Guys, > I am seeing the following stack traces on Windows. Any clue ? > > > > 1) for TestMorphlineInterceptor.testNoOperation: > > Error Message > > URI has an authority component > > Stacktrace > > java.lang.IllegalArgumentException: URI has an authority component > at java.io.File.<init>(File.java:368) > at > com.cloudera.cdk.morphline.shaded.com.google.common.reflect.ClassPath$Scanner.scan(ClassPath.java:276) > at > com.cloudera.cdk.morphline.shaded.com.google.common.reflect.ClassPath$Scanner.scanJar(ClassPath.java:339) > at > com.cloudera.cdk.morphline.shaded.com.google.common.reflect.ClassPath$Scanner.scanFrom(ClassPath.java:288) > at > com.cloudera.cdk.morphline.shaded.com.google.common.reflect.ClassPath$Scanner.scan(ClassPath.java:276) > at > com.cloudera.cdk.morphline.shaded.com.google.common.reflect.ClassPath.from(ClassPath.java:84) > at > com.cloudera.cdk.morphline.api.MorphlineContext.getTopLevelClasses(MorphlineContext.java:100) > at > com.cloudera.cdk.morphline.api.MorphlineContext.importCommandBuilders(MorphlineContext.java:68) > at com.cloudera.cdk.morphline.stdlib.Pipe.<init>(Pipe.java:41) > at > com.cloudera.cdk.morphline.stdlib.PipeBuilder.build(PipeBuilder.java:39) > at com.cloudera.cdk.morphline.base.Compiler.compile(Compiler.java:127) > at com.cloudera.cdk.morphline.base.Compiler.compile(Compiler.java:56) > at > org.apache.flume.sink.solr.morphline.MorphlineHandlerImpl.configure(MorphlineHandlerImpl.java:90) > at > org.apache.flume.sink.solr.morphline.MorphlineInterceptor$LocalMorphlineInterceptor.<init>(MorphlineInterceptor.java:140) > at > org.apache.flume.sink.solr.morphline.MorphlineInterceptor.<init>(MorphlineInterceptor.java:55) > at > org.apache.flume.sink.solr.morphline.MorphlineInterceptor$Builder.build(MorphlineInterceptor.java:117) > at > org.apache.flume.sink.solr.morphline.TestMorphlineInterceptor.build(TestMorphlineInterceptor.java:141) > at > org.apache.flume.sink.solr.morphline.TestMorphlineInterceptor.testNoOperation(TestMorphlineInterceptor.java:46) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:597) > at > org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45) > at > org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) > at > org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42) > at > org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20) > at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263) > at > org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68) > at > org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47) > at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) > at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) > at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) > at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) > at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) > at org.junit.runners.ParentRunner.run(ParentRunner.java:300) > at > org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:252) > at > org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:141) > at > org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:597) > at > org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189) > at > org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165) > at > org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85) > at > org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115) > at > > org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75) > > > > > > > > > 2) Similar error on sink tests. This is for > TestMorphlineSolrSink.testAvroRoundTrip > > > > Error Message > > URI has an authority component > > Stacktrace > > java.lang.IllegalArgumentException: URI has an authority component > at > __randomizedtesting.SeedInfo.seed([2829104CE9665276:2EA2179E75B40B82]:0) > at java.io.File.<init>(File.java:368) > at > com.cloudera.cdk.morphline.shaded.com.google.common.reflect.ClassPath$Scanner.scan(ClassPath.java:276) > at > com.cloudera.cdk.morphline.shaded.com.google.common.reflect.ClassPath$Scanner.scanJar(ClassPath.java:339) > at > com.cloudera.cdk.morphline.shaded.com.google.common.reflect.ClassPath$Scanner.scanFrom(ClassPath.java:288) > at > com.cloudera.cdk.morphline.shaded.com.google.common.reflect.ClassPath$Scanner.scan(ClassPath.java:276) > at > com.cloudera.cdk.morphline.shaded.com.google.common.reflect.ClassPath.from(ClassPath.java:84) > at > com.cloudera.cdk.morphline.api.MorphlineContext.getTopLevelClasses(MorphlineContext.java:100) > at > com.cloudera.cdk.morphline.api.MorphlineContext.importCommandBuilders(MorphlineContext.java:68) > at com.cloudera.cdk.morphline.stdlib.Pipe.<init>(Pipe.java:41) > at > com.cloudera.cdk.morphline.stdlib.PipeBuilder.build(PipeBuilder.java:39) > at com.cloudera.cdk.morphline.base.Compiler.compile(Compiler.java:127) > at com.cloudera.cdk.morphline.base.Compiler.compile(Compiler.java:56) > at > org.apache.flume.sink.solr.morphline.MorphlineHandlerImpl.configure(MorphlineHandlerImpl.java:90) > at > org.apache.flume.sink.solr.morphline.TestMorphlineSolrSink.setUp(TestMorphlineSolrSink.java:167) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:597) > at > com.carrotsearch.randomizedtesting.RandomizedRunner.invoke(RandomizedRunner.java:1559) > at > com.carrotsearch.randomizedtesting.RandomizedRunner.access$600(RandomizedRunner.java:79) > at > com.carrotsearch.randomizedtesting.RandomizedRunner$7.evaluate(RandomizedRunner.java:771) > at > com.carrotsearch.randomizedtesting.RandomizedRunner$8.evaluate(RandomizedRunner.java:787) > at > com.carrotsearch.randomizedtesting.rules.SystemPropertiesRestoreRule$1.evaluate(SystemPropertiesRestoreRule.java:53) > 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 > com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36) > at > com.carrotsearch.randomizedtesting.rules.SystemPropertiesRestoreRule$1.evaluate(SystemPropertiesRestoreRule.java:53) > 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:662) > > Standard Output > > 4522 [TEST-TestMorphlineSolrSink.testAvroRoundTrip-seed#[2829104CE9665276]] > INFO org.apache.solr.SolrTestCaseJ4 - ###Starting testAvroRoundTrip > 4568 [TEST-TestMorphlineSolrSink.testAvroRoundTrip-seed#[2829104CE9665276]] > INFO org.apache.solr.SolrTestCaseJ4 - ###Ending testAvroRoundTrip > > Standard Error > > NOTE: reproduce with: ant test -Dtestcase=TestMorphlineSolrSink > -Dtests.method=testDocumentTypes2 -Dtests.seed=2829104CE9665276 > -Dtests.locale=en_US -Dtests.timezone=Etc/GMT+12 > -Dtests.file.encoding=Cp1252 > > -- > CONFIDENTIALITY NOTICE > NOTICE: This message is intended for the use of the individual or entity to > which it is addressed and may contain information that is confidential, > privileged and exempt from disclosure under applicable law. If the reader > of this message is not the intended recipient, you are hereby notified that > any printing, copying, dissemination, distribution, disclosure or > forwarding of this communication is strictly prohibited. If you have > received this communication in error, please contact the sender immediately > and delete it from your system. Thank You.