JNLP Slave client disconnects connection automatically

165 views
Skip to first unread message

Gandhi, Pawan

unread,
Feb 16, 2011, 12:40:32 PM2/16/11
to jenkins...@googlegroups.com

JNLP Slave client is terminating connection automatically. Again i have to start it manually using a script on slave machine which first downloads latest slave.jar and starts java process. Then after 3-4 minutes, this connectivity breaks. I can see below errors in master and slave logs.

 

Master error:

WARNING: Connection #73 for + testSlave terminated

java.net.SocketException: Socket closed

        at java.net.SocketInputStream.socketRead0(Native Method)

        at java.net.SocketInputStream.read(SocketInputStream.java:129)

        at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)

        at java.io.BufferedInputStream.read(BufferedInputStream.java:237)

        at java.io.ObjectInputStream$PeekInputStream.peek(ObjectInputStream.java:2249)

        at java.io.ObjectInputStream$BlockDataInputStream.peek(ObjectInputStream.java:2542)

        at java.io.ObjectInputStream$BlockDataInputStream.peekByte(ObjectInputStream.java:2552)

        at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1297)

        at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)

        at hudson.remoting.Channel$ReaderThread.run(Channel.java:947)

 

 

Slave error:

SEVERE: I/O error in channel channel

java.net.SocketTimeoutException: Read timed out

 at java.net.SocketInputStream.socketRead0(Native Method)

 at java.net.SocketInputStream.read(SocketInputStream.java:129)

 at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)

 at java.io.BufferedInputStream.read(BufferedInputStream.java:237)

 at java.io.ObjectInputStream$PeekInputStream.peek(ObjectInputStream.java:2249)

 at java.io.ObjectInputStream$BlockDataInputStream.peek(ObjectInputStream.java:2542)

 at java.io.ObjectInputStream$BlockDataInputStream.peekByte(ObjectInputStream.java:2552)

 at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1297)

 at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)

 at hudson.remoting.Channel$ReaderThread.run(Channel.java:947)

Feb 16, 2011 12:38:07 PM hudson.remoting.jnlp.Main$CuiListener status

INFO: Terminated

 

 

 

Thanks

Pawan

----------------------------------------------

 

Kohsuke Kawaguchi

unread,
Feb 18, 2011, 2:25:29 PM2/18/11
to jenkins...@googlegroups.com, Gandhi, Pawan

A problem like this often happens if you have a router in between that's
actively shutting down "inactive" connections. Some companies do this
for security reasons and etc. Does that ring a bell?

Jenkins sends some meaningless "ping" data every 10 minutes to prevent
this from happening, but in some places the time out is very short.


Also, "Read timed out" is bit unusual error, because Jenkins by itself
doesn't set any TCP read time out. Maybe you are setting this value at
the kernel level to something very short?


If you don't want to deal with your IT folks, another possibility is to
tunnel the connection over other means, such as SSH tunnels. We can also
make the ping interval configurable to see if that helps?

> Feb 16, 201112:38:07 PMhudson.remoting.jnlp.Main$CuiListener status
>
> INFO: Terminated
>
> Thanks
>
> Pawan
>
> **----------------------------------------------**
>


--
Kohsuke Kawaguchi | CloudBees, Inc. | http://cloudbees.com/

Gandhi, Pawan

unread,
Feb 18, 2011, 2:45:40 PM2/18/11
to Kohsuke Kawaguchi, jenkins...@googlegroups.com
We could resolve this issue by replacing existing IBM based JVMs on two of our hudson nodes with latest java6. Nodes are now in healthy mode.

Thanks
Pawan

Reply all
Reply to author
Forward
0 new messages