-
Bug
-
Resolution: Unresolved
-
Minor
-
None
-
Centos 7, 64bit
jenkins-2.7.4-1.1.noarch (rpm) LTS
Symptom
If you run a job via the cli with the "-s" switch and the job does not print any output for longer then 5 seconds, the connection dies with "java.io.IOException: Unexpected termination of the channel"
Note: hudson.diyChunking is needed for https://issues.jenkins-ci.org/browse/JENKINS-35197
/usr/bin/java -Dhudson.diyChunking=false -jar /usr/lib/jenkins/jenkins-cli.jar -s http://127.0.0.1:8080 -i /root/kenkins_ssh_key build -s JOB ... [log] Sep 22, 2016 9:15:40 AM hudson.remoting.SynchronousCommandTransport$ReaderThread run [log] SEVERE: I/O error in channel Chunked connection to http://127.0.0.1:8080/cli [log] java.io.IOException: Unexpected termination of the channel [log] at hudson.remoting.SynchronousCommandTransport$ReaderThread.run(SynchronousCommandTransport.java:73) [log] Caused by: java.io.EOFException [log] at java.io.ObjectInputStream$PeekInputStream.readFully(ObjectInputStream.java:2353) [log] at java.io.ObjectInputStream$BlockDataInputStream.readShort(ObjectInputStream.java:2822) [log] at java.io.ObjectInputStream.readStreamH ...
Problem
The Jenkins built in Winstone-Jetty server uses a keep alive of 11,25 seconds (see https://github.com/jenkinsci/jenkins/blob/master/cli/src/main/java/hudson/cli/CLI.java#L156), while the jetty is configured with a 5 second timeout (see here https://github.com/jenkinsci/winstone/blob/master/README.md#command-line-options).
Workaround
Specify --httpKeepAliveTimeout=15000 to start of Jenkins
- relates to
-
JENKINS-41745 Remoting-free CLI
- Resolved
-
JENKINS-42513 Increase default keep-alive timeouts
- Open