Sun's Hudson deployment : SVN check out hang

4/14/2008 Dinesh came by and told me that his v3-doc job on jed-v210-1 is hanging at SVN check out. I logged in and run jstack and got the following stack trace. So that hang appears to be in trying to open the socket connection.

"pool-1-thread-1796" prio=10 tid=0x00402400 nid=0x11fbe runnable [0xf2efe000..0xf2effb70]
   java.lang.Thread.State: RUNNABLE
        at java.net.PlainSocketImpl.socketConnect(Native Method)
        at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
        - locked <0xf43e4c10> (a java.net.SocksSocketImpl)
        at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
        at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
        at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
        at java.net.Socket.connect(Socket.java:518)
        at com.sun.net.ssl.internal.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:550)
        at org.tmatesoft.svn.core.internal.util.SVNSocketFactory.createSSLSocket(SVNSocketFactory.java:85)
        at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.connect(HTTPConnection.java:149)
        at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:275)
        at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:238)
        at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:226)
        at org.tmatesoft.svn.core.internal.io.dav.DAVConnection.doPropfind(DAVConnection.java:97)
        at org.tmatesoft.svn.core.internal.io.dav.DAVUtil.getProperties(DAVUtil.java:57)
        at org.tmatesoft.svn.core.internal.io.dav.DAVUtil.getResourceProperties(DAVUtil.java:62)
        at org.tmatesoft.svn.core.internal.io.dav.DAVUtil.getStartingProperties(DAVUtil.java:92)
        at org.tmatesoft.svn.core.internal.io.dav.DAVUtil.findStartingProperties(DAVUtil.java:114)
        at org.tmatesoft.svn.core.internal.io.dav.DAVUtil.getBaselineProperties(DAVUtil.java:199)
        at org.tmatesoft.svn.core.internal.io.dav.DAVUtil.getBaselineInfo(DAVUtil.java:162)
        at org.tmatesoft.svn.core.internal.io.dav.DAVRepository.getLatestRevision(DAVRepository.java:150)
        at org.tmatesoft.svn.core.wc.SVNBasicClient.getRevisionNumber(SVNBasicClient.java:348)
        at org.tmatesoft.svn.core.wc.SVNBasicClient.getLocations(SVNBasicClient.java:462)
        at org.tmatesoft.svn.core.wc.SVNBasicClient.createRepository(SVNBasicClient.java:418)
        at org.tmatesoft.svn.core.wc.SVNBasicClient.createRepository(SVNBasicClient.java:382)
        at org.tmatesoft.svn.core.wc.SVNUpdateClient.doCheckout(SVNUpdateClient.java:305)
        at hudson.scm.SubversionSCM$CheckOutTask.invoke(SubversionSCM.java:408)
        at hudson.scm.SubversionSCM$CheckOutTask.invoke(SubversionSCM.java:354)
        at hudson.FilePath$FileCallableWrapper.call(FilePath.java:1095)
        at hudson.remoting.UserRequest.perform(UserRequest.java:69)
        at hudson.remoting.UserRequest.perform(UserRequest.java:23)
        at hudson.remoting.Request$2.run(Request.java:200)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
        at java.util.concurrent.FutureTask.run(FutureTask.java:138)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
        at java.lang.Thread.run(Thread.java:619)

I then attempted telnet www.dev.java.net 80 (subversion was attempting to check out from this machine — see below for the complete execution record of this v3-doc build)

started
Building remotely on jed-v210-1
Checking out a fresh workspace because /files/hudson/workspace/v3-docs/v3-docs doesn't exist
Checking out https://www.dev.java.net/svn/glassfish-svn/trunk/v3-docs
A         basedocs
A         basedocs/src
A         basedocs/src/main
A         basedocs/src/main/resources
A         basedocs/src/main/resources/lib
A         basedocs/src/main/resources/lib/install
A         basedocs/src/main/resources/lib/install/templates
A         basedocs/src/main/resources/lib/install/templates/index.html
A         basedocs/src/main/resources/docs
A         basedocs/src/main/resources/docs/graphics
AU        basedocs/src/main/resources/docs/graphics/logo_sun.gif
AU        basedocs/src/main/resources/docs/features.html
A         basedocs/src/main/resources/docs/css
A         basedocs/src/main/resources/docs/css/default.css
A         basedocs/src/main/resources/docs/copyright.html
A         basedocs/src/main/resources/docs/about.html
A         pom.xml
At revision 20037
no revision recorded for https://www.dev.java.net/svn/glassfish-svn/trunk/v3-docs in the previous build
Parsing POMs
[v3-docs] $ /files/hudson/tools/java1.6/bin/java -cp /files/hudson/maven-agent.jar:/files/hudson/tools/maven-2.0.7/boot/classworlds-1.1.jar hudson.maven.agent.Main /files/hudson/tools/maven-2.0.7 /files/hudson/bin/slave.jar /files/hudson/maven-interceptor.jar
channel started
[INFO] Scanning for projects...
WAGON_VERSION: 1.0-beta-2
[INFO] ----------------------------------------------------------------------------
[INFO] Building V3 Docs
[INFO]    task-segment: [install]
[INFO] ----------------------------------------------------------------------------
[INFO] [resources:resources]
[INFO] Using default encoding to copy filtered resources.
[INFO] [compiler:compile]
[INFO] No sources to compile
[INFO] [resources:testResources]
[INFO] Using default encoding to copy filtered resources.
[INFO] [compiler:testCompile]
[INFO] No sources to compile
[INFO] [surefire:test]
[INFO] No tests to run.
[HUDSON] Recording test results
[INFO] [jar:jar]
[INFO] Building jar: /files/hudson/workspace/v3-docs/v3-docs/target/v3-docs-10.0-SNAPSHOT.jar
[INFO] [install:install]
[INFO] Installing /files/hudson/workspace/v3-docs/v3-docs/target/v3-docs-10.0-SNAPSHOT.jar to /files/hudson/.m2/repository/org/glassfish/docs/v3-docs/10.0-SNAPSHOT/v3-docs-10.0-SNAPSHOT.jar
[HUDSON] Archiving /files/hudson/workspace/v3-docs/v3-docs/pom.xml to /files/hudson/server/jobs/v3-docs/modules/org.glassfish.docs$v3-docs/builds/2008-04-14_16-54-15/archive/org.glassfish.docs/v3-docs/10.0-SNAPSHOT/pom.xml
[HUDSON] Archiving /files/hudson/workspace/v3-docs/v3-docs/target/v3-docs-10.0-SNAPSHOT.jar to /files/hudson/server/jobs/v3-docs/modules/org.glassfish.docs$v3-docs/builds/2008-04-14_16-54-15/archive/org.glassfish.docs/v3-docs/10.0-SNAPSHOT/v3-docs-10.0-SNAPSHOT.jar
[INFO ] Installing /files/hudson/server/jobs/v3-docs/modules/org.glassfish.docs$v3-docs/builds/2008-04-14_16-54-15/archive/org.glassfish.docs/v3-docs/10.0-SNAPSHOT/v3-docs-10.0-SNAPSHOT.jar to /files/hudson/.m2/repository/org/glassfish/docs/v3-docs/10.0-SNAPSHOT/v3-docs-10.0-SNAPSHOT.jar
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESSFUL
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 59 seconds
[INFO] Finished at: Mon Apr 14 16:56:38 PDT 2008
[INFO] Final Memory: 10M/227M
[INFO] ------------------------------------------------------------------------
channel stopped
Deploying artifacts to dav:http://rator.sfbay/maven/repositories/glassfish/
Deploying the main artifact v3-docs-10.0-SNAPSHOT.jar
[INFO ] Retrieving previous build number from rator.sfbay
[INFO ] Retrieving previous metadata from rator.sfbay
[INFO ] Uploading repository metadata for: 'snapshot org.glassfish.docs:v3-docs:10.0-SNAPSHOT'
[INFO ] Retrieving previous metadata from rator.sfbay
[INFO ] Uploading repository metadata for: 'artifact org.glassfish.docs:v3-docs'
[INFO ] Retrieving previous metadata from rator.sfbay
[INFO ] Uploading project information for v3-docs 10.0-SNAPSHOT
finished: SUCCESS

Either the act of jstack or this telnet brought the hanging process back into life, and the build eventually completed successfully.

Next time this happens, try to see if it's jstack or telnet that fixed this problem. We need more experience to understand what's going on here.