[ 
https://issues.jenkins-ci.org/browse/JENKINS-12037?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=160508#comment-160508
 ] 

Richard Mortimer commented on JENKINS-12037:
--------------------------------------------

@George Panayotov many thanks that is really good data.

I've only had time for a very quick look at this but to answer my questions:

* The ping thread only attempts to ping once at the start of the CLI session.
* There is no activity on the thread at all after the ping thread fails until 
the 60 second timeout.

What authentication schemes do you have enabled on your Jenkins instance? That 
might be key to why I don't see this issue.

I'm not going to have time to look at this further this week due to other 
committments. But its clear that the ping thread is definitely failing in this 
case so hopefully fixing that will make things work.

For the record I noticed the following in the packet capture file.

Stream 1 62335 -> 8080

* Starts at offset 0.0000
* Download stream request started at packet 17 0.157159
* Finish of stacktrace at packet 83 4.177468
* No activity until 60.751270 when the server side closes the stream

Stream 2 62336 -> 8080

* Upload stream starts at packet 21 0.198207
* Last upload activity at packet 73 0.591000
* No activity until packet 86 60.751422
* Winstone cleanly closes the upload stream.

                
> CLI - I/O error in channel Chunked connection/Unexpected termination of the 
> channel - still occurring in Jenkins 1.449
> ----------------------------------------------------------------------------------------------------------------------
>
>                 Key: JENKINS-12037
>                 URL: https://issues.jenkins-ci.org/browse/JENKINS-12037
>             Project: Jenkins
>          Issue Type: Bug
>          Components: cli
>         Environment: * Running on SLES9 Linux server with 4 CPUs and plenty 
> of diskspace.
> * Tomcat 7.0.22
> * JDK 1.6.0_14
> * Only ONE Master configuration - no slaves are configured
> * 3 Executors - (one less than the max number of CPUs) 
>            Reporter: mark streit
>            Priority: Critical
>         Attachments: jenkins-timeout, Tomcat7_Jenkins1449_logs.zip
>
>
> We reported an issue some time back that was also listed as fixed in Jenkins 
> 1.441:
> Log:
> [FIXED JENKINS-11130] SEVERE: I/O error in channel Chunked connection when 
> using jenkins-cli.jar
> Perhaps another bug should NOT be submitted so I have added the following 
> comments below the line to the original defect 11130 comments section in case 
> it can be reviewed/re-opened.
> We did NOT try to make any adjustments to the Tomcat configuration:
> Tomcat Connector connectionUploadTimeout
> but we are also now seeing the same problem with Winstone when at this same 
> 1.441 level.  We did revert to the 1.438 version of the CLI (leaving the WAR 
> at 1.441 running in Winstone) and that is serving asthe current workaround.
> ================================================================================================
> We have downloaded and installed the LATEST 1.441 release that lists the fix 
> for this problem. Currently we were running 1.438 on Winstone only (since 
> with Tomcat 6 or 7, we had experienced the error HOWEVER yet under Winstone, 
> it worked OK so that was our workaround - while running 1.438).
> Now with Jenkins 1.441 - we are getting the ERROR again and NOW WITH BOTH 
> Winstone and the Tomcat configurations). We have left the Jenkins 1.441 WAR 
> file in place running on Winstone, and reverted the CLI jar file back to the 
> 1.438 version for now and that appears to work again with Winstone.
> Checked Manifest of CLI jar downloaded with the 1.441 WAR installation:
> Manifest-Version: 1.0
> Archiver-Version: Plexus Archiver
> Created-By: Apache Maven
> Built-By: kohsuke
> Build-Jdk: 1.6.0_26
> Main-Class: hudson.cli.CLI
> Jenkins-CLI-Version: 1.441
> Under Tomcat 7, we get this stacktrace:
> Started by command line
> [workspace] $ /bin/bash -xe 
> /opt/apache-tomcat-7.0.22_jenkins/temp/hudson32817888834817830.sh
> + /opt/Sun/jdk1.6.0_14/bin/java -jar /opt/Sun/jdk1.6.0_14/lib/jenkins-cli.jar 
> -s http://11.22.33.44:8082/jenkins/ build XYZ_Project-SharedLibs -s -p 
> SVN_PATH=trunk
> Dec 5, 2011 12:59:11 PM hudson.remoting.Channel$ReaderThread run
> SEVERE: I/O error in channel Chunked connection to 
> http://11.22.33.44:8082/jenkins/cli
> java.io.IOException: Unexpected termination of the channel
> at hudson.remoting.Channel$ReaderThread.run(Channel.java:1115)
> Caused by: java.io.EOFException
> at 
> java.io.ObjectInputStream$BlockDataInputStream.peekByte(ObjectInputStream.java:2554)
> at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1297)
> at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
> at hudson.remoting.Channel$ReaderThread.run(Channel.java:1109)
> Exception in thread "main" hudson.remoting.RequestAbortedException: 
> hudson.remoting.RequestAbortedException: java.io.IOException: Unexpected 
> termination of the channel
> at hudson.remoting.Request.call(Request.java:149)
> at hudson.remoting.Channel.call(Channel.java:681)
> at 
> hudson.remoting.RemoteInvocationHandler.invoke(RemoteInvocationHandler.java:158)
> at $Proxy2.main(Unknown Source)
> at hudson.cli.CLI.execute(CLI.java:200)
> at hudson.cli.CLI._main(CLI.java:330)
> at hudson.cli.CLI.main(CLI.java:245)
> Caused by: hudson.remoting.RequestAbortedException: java.io.IOException: 
> Unexpected termination of the channel
> at hudson.remoting.Request.abort(Request.java:273)
> at hudson.remoting.Channel.terminate(Channel.java:732)
> at hudson.remoting.Channel$ReaderThread.run(Channel.java:1139)
> Caused by: java.io.IOException: Unexpected termination of the channel
> at hudson.remoting.Channel$ReaderThread.run(Channel.java:1115)
> Caused by: java.io.EOFException
> at 
> java.io.ObjectInputStream$BlockDataInputStream.peekByte(ObjectInputStream.java:2554)
> at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1297)
> at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
> at hudson.remoting.Channel$ReaderThread.run(Channel.java:1109)
> Build step 'Execute shell' marked build as failure
> Notifying upstream projects of job completion
> Finished: FAILURE
> Under Winstone, we get this stacktrace - it's somewhat different:
> Started by command line
> [workspace] $ /bin/bash -xe /tmp/hudson10791816374444704.sh
> + /opt/Sun/jdk1.6.0_14/bin/java -jar /opt/Sun/jdk1.6.0_14/lib/jenkins-cli.jar 
> -s http://11.22.33.44:8082/jenkins/ build XYZ_Project-SharedLibs -s -p 
> SVN_PATH=trunk
> Dec 5, 2011 1:18:22 PM hudson.remoting.Channel$ReaderThread run
> SEVERE: I/O error in channel Chunked connection to 
> http://11.22.33.44:8082/jenkins/cli
> java.io.IOException: Premature EOF
> at 
> sun.net.www.http.ChunkedInputStream.readAheadBlocking(ChunkedInputStream.java:538)
>  
> (http://www.http.ChunkedInputStream.readAheadBlocking%28ChunkedInputStream.java:538%29)
> at sun.net.www.http.ChunkedInputStream.readAhead(ChunkedInputStream.java:582) 
> (http://www.http.ChunkedInputStream.readAhead%28ChunkedInputStream.java:582%29)
> at sun.net.www.http.ChunkedInputStream.read(ChunkedInputStream.java:669) 
> (http://www.http.ChunkedInputStream.read%28ChunkedInputStream.java:669%29)
> at java.io.FilterInputStream.read(FilterInputStream.java:116)
> at 
> sun.net.www.protocol.http.HttpURLConnection$HttpInputStream.read(HttpURLConnection.java:2504)
>  
> (http://www.protocol.http.HttpURLConnection$HttpInputStream.read%28HttpURLConnection.java:2504%29)
> at 
> sun.net.www.protocol.http.HttpURLConnection$HttpInputStream.read(HttpURLConnection.java:2499)
>  
> (http://www.protocol.http.HttpURLConnection$HttpInputStream.read%28HttpURLConnection.java:2499%29)
> at 
> sun.net.www.protocol.http.HttpURLConnection$HttpInputStream.read(HttpURLConnection.java:2488)
>  
> (http://www.protocol.http.HttpURLConnection$HttpInputStream.read%28HttpURLConnection.java:2488%29)
> 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:1109)
> Exception in thread "main" hudson.remoting.RequestAbortedException: 
> hudson.remoting.RequestAbortedException: java.io.IOException: Premature EOF
> at hudson.remoting.Request.call(Request.java:149)
> at hudson.remoting.Channel.call(Channel.java:681)
> at 
> hudson.remoting.RemoteInvocationHandler.invoke(RemoteInvocationHandler.java:158)
> at $Proxy2.main(Unknown Source)
> at hudson.cli.CLI.execute(CLI.java:200)
> at hudson.cli.CLI._main(CLI.java:330)
> at hudson.cli.CLI.main(CLI.java:245)
> Caused by: hudson.remoting.RequestAbortedException: java.io.IOException: 
> Premature EOF
> at hudson.remoting.Request.abort(Request.java:273)
> at hudson.remoting.Channel.terminate(Channel.java:732)
> at hudson.remoting.Channel$ReaderThread.run(Channel.java:1139)
> Caused by: java.io.IOException: Premature EOF
> at 
> sun.net.www.http.ChunkedInputStream.readAheadBlocking(ChunkedInputStream.java:538)
>  
> (http://www.http.ChunkedInputStream.readAheadBlocking%28ChunkedInputStream.java:538%29)
> at sun.net.www.http.ChunkedInputStream.readAhead(ChunkedInputStream.java:582) 
> (http://www.http.ChunkedInputStream.readAhead%28ChunkedInputStream.java:582%29)
> at sun.net.www.http.ChunkedInputStream.read(ChunkedInputStream.java:669) 
> (http://www.http.ChunkedInputStream.read%28ChunkedInputStream.java:669%29)
> at java.io.FilterInputStream.read(FilterInputStream.java:116)
> at 
> sun.net.www.protocol.http.HttpURLConnection$HttpInputStream.read(HttpURLConnection.java:2504)
>  
> (http://www.protocol.http.HttpURLConnection$HttpInputStream.read%28HttpURLConnection.java:2504%29)
> at 
> sun.net.www.protocol.http.HttpURLConnection$HttpInputStream.read(HttpURLConnection.java:2499)
>  
> (http://www.protocol.http.HttpURLConnection$HttpInputStream.read%28HttpURLConnection.java:2499%29)
> at 
> sun.net.www.protocol.http.HttpURLConnection$HttpInputStream.read(HttpURLConnection.java:2488)
>  
> (http://www.protocol.http.HttpURLConnection$HttpInputStream.read%28HttpURLConnection.java:2488%29)
> 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:1109)
> Build step 'Execute shell' marked build as failure
> Notifying upstream projects of job completion
> Finished: FAILURE

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.jenkins-ci.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to