Issue Type: Bug Bug
Assignee: Kohsuke Kawaguchi
Components: cli
Created: 21/Nov/13 9:49 PM
Description:

There's a report from users that indicates a CLI client can hang at the following spot:

java.lang.Thread.State: RUNNABLE 
at java.net.SocketInputStream.socketRead0(Native Method) 
at java.net.SocketInputStream.read(Unknown Source) 
at java.io.FilterInputStream.read(Unknown Source) 
at java.io.FilterInputStream.read(Unknown Source) 
at javax.crypto.CipherInputStream.a(DashoA13*..) 
at javax.crypto.CipherInputStream.read(DashoA13*..) 
at java.io.DataInputStream.readFully(Unknown Source) 
at java.io.DataInputStream.readFully(Unknown Source) 
at hudson.cli.Connection.readByteArray(Connection.java:132) 
at hudson.cli.CLI.connectViaCliPort(CLI.java:243) 
at hudson.cli.CLI.<init>(CLI.java:134) 
at hudson.cli.CLIConnectionFactory.connect(CLIConnectionFactory.java:72) 
at hudson.cli.CLI._main(CLI.java:469) 
at hudson.cli.CLI.main(CLI.java:384)

At the same time the server has already progressed to the following state:

   java.lang.Thread.State: RUNNABLE
    at java.net.SocketInputStream.socketRead0(Native Method)
    at java.net.SocketInputStream.read(SocketInputStream.java:150)
    at java.net.SocketInputStream.read(SocketInputStream.java:121)
    at java.io.FilterInputStream.read(FilterInputStream.java:133)
    at java.io.FilterInputStream.read(FilterInputStream.java:107)
    at javax.crypto.CipherInputStream.getMoreData(CipherInputStream.java:103)
    at javax.crypto.CipherInputStream.read(CipherInputStream.java:224)
    at java.io.BufferedInputStream.fill(BufferedInputStream.java:235)
    at java.io.BufferedInputStream.read(BufferedInputStream.java:254)
    - locked <0x000000041fa9e560> (a java.io.BufferedInputStream)
    at hudson.remoting.ClassicCommandTransport.create(ClassicCommandTransport.java:98)
    at hudson.remoting.Channel.<init>(Channel.java:392)
    at hudson.remoting.Channel.<init>(Channel.java:388)
    at hudson.cli.CliProtocol$Handler.runCli(CliProtocol.java:48)
    at hudson.cli.CliProtocol2$Handler2.run(CliProtocol2.java:73)
    at hudson.cli.CliProtocol2.handle(CliProtocol2.java:32)
    at hudson.TcpSlaveAgentListener$ConnectionHandler.run(TcpSlaveAgentListener.java:150)

The issue appears to be that the server thinks it has sent the server's identity (CliProtocol2.Handler2.run() line 62) but the client is still waiting for it. The problem is reported as always reproducible.

I'm failing to reproduce this problem locally. If other people see this problem, please report that here.

Project: Jenkins
Priority: Major Major
Reporter: Kohsuke Kawaguchi
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators.
For more information on JIRA, see: http://www.atlassian.com/software/jira

--
You received this message because you are subscribed to the Google Groups "Jenkins Issues" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-issues+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to