On Wednesday 30 June 2010 1:59:27 am Jim Talbut wrote:
> The problem is that the timeout in the test is too low, so this fixes it:
> Index:
> src/test/java/org/apache/cxf/systest/dispatch/DispatchClientServerTest.java
> ===================================================================
> ---
> src/test/java/org/apache/cxf/systest/dispatch/DispatchClientServerTest.java
> (revision 959071)
> +++
> src/test/java/org/apache/cxf/systest/dispatch/DispatchClientServerTest.java
> (working copy)
> @@ -149,7 +149,7 @@
> 
>           DispatchImpl dispImpl = (DispatchImpl)disp;
>           HTTPConduit cond =
> (HTTPConduit)dispImpl.getClient().getConduit(); -       
> cond.getClient().setConnectionTimeout(500);
> +        cond.getClient().setConnectionTimeout(5000);
> 
>           InputStream is =
> getClass().getResourceAsStream("resources/GreetMeDocLiteralReq.xml");
>           SOAPMessage soapReqMsg =
> MessageFactory.newInstance().createMessage(null, is);
> 
> /Now/ the question is why does it take more than 0.5s to fail to connect
> to a local endpoint
> (http://localhost:4986/SOAPDispatchService/SoapDispatchPort) on my PC?
> I'm still looking into that.


Well, no.   The test ISN'T supposed to connect to the endpoint.   It's 
supposed to test the failure condition where there isn't anything running on 
that port.    That's why the timeout is so low as it's SUPPOSED to timeout.   
Thus, if the test is failing, it's either successfully connecting to something 
or the thrown fault is wrong.

Can you try keeping it at 500, but then put a System.gc() and/or a 
Thread.yield() or something before it to see if it just needs a little extra 
time.   The TestUtil.getPortNumber("fake-port") gets a "unique" port number by 
allocating a server socket, getting the port number, then immediately closing 
it.   Maybe it's taking a little extra time to close that port.    Also, try 
doing a printStackTrace on the caught exception prior to the assert.   I'd 
like to know the trace where the SocketTimeoutException is coming from.     
According to javadocs, we SHOULD be getting the ConnectException, not the 
SocketTimeoutException.    


Dan




> 
> Jim
> 
> On 25/06/2010 17:47, Daniel Kulp wrote:
> > On Friday 25 June 2010 8:46:56 am Jim Talbut wrote:
> >> Ah, thanks, that's much better.
> >> But a full "mvn clean install" is consistently failing on this test:
> >> <testcase time="2.054"
> >> classname="org.apache.cxf.systest.dispatch.DispatchClientServerTest"
> >> name="testTimeout">
> >> <failure message="java.net.SocketTimeoutException"
> >> type="java.lang.AssertionError">java.lang.AssertionError:
> >> java.net.SocketTimeoutException
> >> 
> >>       at org.junit.Assert.fail(Assert.java:91)
> >>       at org.junit.Assert.assertTrue(Assert.java:43)
> >>       at
> >> 
> >> org.apache.cxf.systest.dispatch.DispatchClientServerTest.testTimeout(Dis
> >> pat chClientServerTest.java:165) at
> >> sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at
> >> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav
> >> a:3 9) at
> >> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor
> >> Imp l.java:25) at java.lang.reflect.Method.invoke(Method.java:597)
> >> 
> >> I haven't investigated further yet, if this isn't known to anyone I'll
> >> have a look to see if I can work out what's going on.
> > 
> > If you find something, let me know.   Hudson was fine the last build and
> > I haven't seen that test fail lately so I'm not sure what would be going
> > on.
> > 
> > Dan
> > 
> >> Jim
> >> 
> >> On 25/06/2010 03:52, Daniel Kulp wrote:
> >>> Probably my fault.   Most of us aren't using Windows anymore which
> >>> would explain why it affected you and not us.  I just committed a fix
> >>> and deployed a new snapshot.    Thus, you should be able to build now
> >>> if you run with the -U -cpu to update the snapshot.
> >>> 
> >>> Dan
> >>> 
> >>> On Thursday 24 June 2010 4:06:17 pm Jim Talbut wrote:
> >>>> Hi,
> >>>> 
> >>>> When I try to build CXF from source I get this:
> >>>> [INFO] Preparing pmd:check
> >>>> [INFO] [pmd:pmd {execution: pmd}]
> >>>> [INFO] [pmd:check {execution: validate}]
> >>>> [INFO]
> >>>> [INFO] [cxf-xml2fastinfoset:xml2fastinfoset {execution:
> >>>> xml2fastinfoset}] [INFO] [cxf-xjc:xsdtojava {execution:
> >>>> generate-sources}]
> >>>> [INFO]
> >>>> ----------------------------------------------------------------------
> >>>> -- [ERROR] BUILD ERROR
> >>>> [INFO]
> >>>> ----------------------------------------------------------------------
> >>>> -- [INFO] The filename, directory name, or volume label syntax is
> >>>> incorrect
> >>>> 
> >>>> [INFO]
> >>>> ----------------------------------------------------------------------
> >>>> -- [INFO] Trace
> >>>> org.apache.maven.lifecycle.LifecycleExecutionException: The filename,
> >>>> directory name, or volume label syntax is incorrect
> >>>> 
> >>>>            at
> >>>> 
> >>>> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(Defau
> >>>> lt Lif ecycleExecutor.java:719) at
> >>>> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLif
> >>>> ec ycl e(DefaultLifecycleExecutor.java:556) at
> >>>> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(Defaul
> >>>> tL ife cycleExecutor.java:535) at
> >>>> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHand
> >>>> le Fai lures(DefaultLifecycleExecutor.java:387) at
> >>>> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegment
> >>>> s( Def aultLifecycleExecutor.java:348) at
> >>>> org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLif
> >>>> ec ycl eExecutor.java:180) at
> >>>> org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:328) at
> >>>> org.apache.maven.DefaultMaven.execute(DefaultMaven.java:138) at
> >>>> org.apache.maven.cli.MavenCli.main(MavenCli.java:362)
> >>>> 
> >>>>            at
> >>>> 
> >>>> org.apache.maven.cli.compat.CompatibleMain.main(CompatibleMain.java:60
> >>>> )
> >>>> 
> >>>>            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> >>>>            Method) at
> >>>> 
> >>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.j
> >>>> av a:3 9) at
> >>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccess
> >>>> or Imp l.java:25) at java.lang.reflect.Method.invoke(Method.java:597)
> >>>> 
> >>>>            at
> >>>> 
> >>>> org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
> >>>> 
> >>>>            at
> >>>>            org.codehaus.classworlds.Launcher.launch(Launcher.java:255
> >>>>            ) at
> >>>> 
> >>>> org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
> >>>> 
> >>>>            at
> >>>>            org.codehaus.classworlds.Launcher.main(Launcher.java:375)
> >>>> 
> >>>> Caused by: org.apache.maven.plugin.MojoExecutionException: The
> >>>> filename, directory name, or volume label syntax is incorrect
> >>>> 
> >>>>            at
> >>>> 
> >>>> org.apache.cxf.maven_plugin.AbstractXSDToJavaMojo.execute(AbstractXSDT
> >>>> oJ ava Mojo.java:229) at
> >>>> org.apache.cxf.maven_plugin.XSDToJavaMojo.execute(XSDToJavaMojo.java:3
> >>>> 8)
> >>>> 
> >>>>            at
> >>>> 
> >>>> org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPlugin
> >>>> Ma nag er.java:490) at
> >>>> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(Defau
> >>>> lt Lif ecycleExecutor.java:694) ... 17 more
> >>>> Caused by: java.io.IOException: The filename, directory name, or
> >>>> volume label syntax is incorrect
> >>>> 
> >>>>            at java.io.WinNTFileSystem.createFileExclusively(Native
> >>>>            Method) at java.io.File.createNewFile(File.java:883)
> >>>>            at
> >>>> 
> >>>> org.apache.cxf.maven_plugin.AbstractXSDToJavaMojo.execute(AbstractXSDT
> >>>> oJ ava Mojo.java:220) ... 20 more
> >>>> [INFO]
> >>>> ----------------------------------------------------------------------
> >>>> -- [INFO] Total time: 50 seconds
> >>>> [INFO] Finished at: Thu Jun 24 20:59:07 BST 2010
> >>>> [INFO] Final Memory: 120M/502M
> >>>> [INFO]
> >>>> ----------------------------------------------------------------------
> >>>> --
> >>>> 
> >>>> Useful version details:
> >>>> C:\Work\cxf>mvn -v
> >>>> Apache Maven 2.2.1 (r801777; 2009-08-06 20:16:01+0100)
> >>>> Java version: 1.6.0_14
> >>>> Java home: C:\Program Files\Java\jdk1.6.0_14\jre
> >>>> Default locale: en_GB, platform encoding: Cp1252
> >>>> OS name: "windows vista" version: "6.0" arch: "amd64" Family:
> >>>> "windows" C:\Work\cxf>echo %MAVEN_OPTS%
> >>>> -Xms512m -Xmx512m -XX:PermSize=512m -XX:MaxPermSize=512m
> >>>> 
> >>>> Noone else seems to be hitting this, so I'm guess it's something
> >>>> stupid in my setup, can anyone point me in the right direction?
> >>>> 
> >>>> Thanks
> >>>> 
> >>>> Jim

-- 
Daniel Kulp
[email protected]
http://dankulp.com/blog

Reply via email to