Details
-
Type:
Bug
-
Status: Closed (View Workflow)
-
Priority:
Major
-
Resolution: Fixed
-
Component/s: remoting
-
Labels:
-
Environment:Jenkins Version: 2.32.2
-
Similar Issues:
Description
We use kubernetes-plugin to launch slaves. In a certain scenario, due to the Slave -> Jenkins connection timeout being very small (100s), the container couldn't connect to the Jenkins instance in time to get the JNLP arguments and it kept retrying forever. However, it did not close the HTTP connection for any of them and the QEMU process hosting the Jenkins instance ran out of file descriptors (which were being handled by the SLIRP stack via the -hostfwd option). All of the fds were stuck at FIN_WAIT2
- The problem of having the slave -> jenkins connection timeout not being configurable has been fixed by: https://github.com/jenkinsci/kubernetes-plugin/pull/141
- The problem of QEMU VM not timing out on fds stuck at FIN_WAIT2 is being tracked at: https://bugs.launchpad.net/qemu/+bug/1668273
- The problem of not closing HTTP Connections cleanly has a PR at: https://github.com/jenkinsci/remoting/pull/152
Code changed in jenkins
User: Nehal J Wani
Path:
src/main/java/hudson/remoting/Launcher.java
http://jenkins-ci.org/commit/remoting/75f9faba9890d5e26db5a13bd87913b57c69fbf7
Log:
[FIXED JENKINS-42371] - Call disconnect() on HttpURLConnection object (#152)
[FIXED JENKINS-42371] - Call disconnect() on HttpURLConnection object