Skip to content

[JENKINS-64632] Jenkins controller leaks file descriptors #11879

Description

@jenkins-infra-bot

Since upgrading to jenkins 2.263.2, we are experiencing file descriptor leaks with images used by Simple Theme Plugin and Custom Job Icon Plugin.

 

Every time a page on the web ui containing locally hosted images is refreshed, a file descriptor is opened (and never closed). 

The following leaked file descriptors were obtained by refreshing over and over the Jenkins system configuration page on Chrome web browser:

 
jenkins@​XXXXX:~$  ls -ltra /proc/14876/fd | grep customIcon
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:06 1152 -> /var/lib/jenkins/userContent/customIcon/beaker-512.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:06 1240 -> /var/lib/jenkins/userContent/customIcon/559b2f19c5a40e547b1c1a3263bebf5fe96cc9e9.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:07 1149 -> /var/lib/jenkins/userContent/customIcon/559b2f19c5a40e547b1c1a3263bebf5fe96cc9e9.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:08 1243 -> /var/lib/jenkins/userContent/customIcon/f2b33c9067724d14263126252fbf1246e070a3d6.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:10 1253 -> /var/lib/jenkins/userContent/customIcon/beaker-512.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:13 1247 -> /var/lib/jenkins/userContent/customIcon/559b2f19c5a40e547b1c1a3263bebf5fe96cc9e9.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:13 1254 -> /var/lib/jenkins/userContent/customIcon/f2b33c9067724d14263126252fbf1246e070a3d6.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:13 1252 -> /var/lib/jenkins/userContent/customIcon/f55de89dd0b4f93588e14dd56903fc206c85f08d.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:13 1251 -> /var/lib/jenkins/userContent/customIcon/f2b33c9067724d14263126252fbf1246e070a3d6.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:13 1250 -> /var/lib/jenkins/userContent/customIcon/beaker-512.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:13 1249 -> /var/lib/jenkins/userContent/customIcon/559b2f19c5a40e547b1c1a3263bebf5fe96cc9e9.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:13 1248 -> /var/lib/jenkins/userContent/customIcon/559b2f19c5a40e547b1c1a3263bebf5fe96cc9e9.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:13 1255 -> /var/lib/jenkins/userContent/customIcon/f55de89dd0b4f93588e14dd56903fc206c85f08d.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:14 1256 -> /var/lib/jenkins/userContent/customIcon/beaker-512.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:15 1242 -> /var/lib/jenkins/userContent/customIcon/559b2f19c5a40e547b1c1a3263bebf5fe96cc9e9.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:16 1260 -> /var/lib/jenkins/userContent/customIcon/beaker-512.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:16 1259 -> /var/lib/jenkins/userContent/customIcon/beaker-512.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:16 1258 -> /var/lib/jenkins/userContent/customIcon/f55de89dd0b4f93588e14dd56903fc206c85f08d.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:16 1257 -> /var/lib/jenkins/userContent/customIcon/f2b33c9067724d14263126252fbf1246e070a3d6.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:17 1263 -> /var/lib/jenkins/userContent/customIcon/f55de89dd0b4f93588e14dd56903fc206c85f08d.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:17 1262 -> /var/lib/jenkins/userContent/customIcon/f2b33c9067724d14263126252fbf1246e070a3d6.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:17 1261 -> /var/lib/jenkins/userContent/customIcon/f55de89dd0b4f93588e14dd56903fc206c85f08d.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:18 1268 -> /var/lib/jenkins/userContent/customIcon/f2b33c9067724d14263126252fbf1246e070a3d6.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:18 1269 -> /var/lib/jenkins/userContent/customIcon/f55de89dd0b4f93588e14dd56903fc206c85f08d.png

 

 

The same thing happens on other jenkins web pages, with all images contained in a custom CSS used by the Simple Theme Plugin.

 

Downgrading to Jenkins 2.263.1 solves the problem.

Reinstalling Jenkins 2.263.2 brings the problem back.

 


Originally reported by mhtouchette, imported from: Jenkins controller leaks file descriptors
  • assignee: wfollonier
  • status: Closed
  • priority: Major
  • component(s): core
  • label(s): 2.263.3-fixed, regression, security-1452
  • resolution: Fixed
  • resolved: 2021-01-20T13:33:46+00:00
  • votes: 0
  • watchers: 10
  • imported: 2025-11-24
Raw content of original issue

Since upgrading to jenkins 2.263.2, we are experiencing file descriptor leaks with images used by Simple Theme Plugin and Custom Job Icon Plugin.

 

Every time a page on the web ui containing locally hosted images is refreshed, a file descriptor is opened (and never closed). 

The following leaked file descriptors were obtained by refreshing over and over the Jenkins system configuration page on Chrome web browser:

 
jenkins@XXXXX:~$  ls -ltra /proc/14876/fd | grep customIcon
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:06 1152 -> /var/lib/jenkins/userContent/customIcon/beaker-512.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:06 1240 -> /var/lib/jenkins/userContent/customIcon/559b2f19c5a40e547b1c1a3263bebf5fe96cc9e9.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:07 1149 -> /var/lib/jenkins/userContent/customIcon/559b2f19c5a40e547b1c1a3263bebf5fe96cc9e9.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:08 1243 -> /var/lib/jenkins/userContent/customIcon/f2b33c9067724d14263126252fbf1246e070a3d6.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:10 1253 -> /var/lib/jenkins/userContent/customIcon/beaker-512.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:13 1247 -> /var/lib/jenkins/userContent/customIcon/559b2f19c5a40e547b1c1a3263bebf5fe96cc9e9.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:13 1254 -> /var/lib/jenkins/userContent/customIcon/f2b33c9067724d14263126252fbf1246e070a3d6.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:13 1252 -> /var/lib/jenkins/userContent/customIcon/f55de89dd0b4f93588e14dd56903fc206c85f08d.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:13 1251 -> /var/lib/jenkins/userContent/customIcon/f2b33c9067724d14263126252fbf1246e070a3d6.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:13 1250 -> /var/lib/jenkins/userContent/customIcon/beaker-512.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:13 1249 -> /var/lib/jenkins/userContent/customIcon/559b2f19c5a40e547b1c1a3263bebf5fe96cc9e9.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:13 1248 -> /var/lib/jenkins/userContent/customIcon/559b2f19c5a40e547b1c1a3263bebf5fe96cc9e9.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:13 1255 -> /var/lib/jenkins/userContent/customIcon/f55de89dd0b4f93588e14dd56903fc206c85f08d.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:14 1256 -> /var/lib/jenkins/userContent/customIcon/beaker-512.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:15 1242 -> /var/lib/jenkins/userContent/customIcon/559b2f19c5a40e547b1c1a3263bebf5fe96cc9e9.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:16 1260 -> /var/lib/jenkins/userContent/customIcon/beaker-512.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:16 1259 -> /var/lib/jenkins/userContent/customIcon/beaker-512.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:16 1258 -> /var/lib/jenkins/userContent/customIcon/f55de89dd0b4f93588e14dd56903fc206c85f08d.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:16 1257 -> /var/lib/jenkins/userContent/customIcon/f2b33c9067724d14263126252fbf1246e070a3d6.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:17 1263 -> /var/lib/jenkins/userContent/customIcon/f55de89dd0b4f93588e14dd56903fc206c85f08d.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:17 1262 -> /var/lib/jenkins/userContent/customIcon/f2b33c9067724d14263126252fbf1246e070a3d6.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:17 1261 -> /var/lib/jenkins/userContent/customIcon/f55de89dd0b4f93588e14dd56903fc206c85f08d.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:18 1268 -> /var/lib/jenkins/userContent/customIcon/f2b33c9067724d14263126252fbf1246e070a3d6.png
 lr-x------ 1 jenkins jenkins 64 Jan 14 21:18 1269 -> /var/lib/jenkins/userContent/customIcon/f55de89dd0b4f93588e14dd56903fc206c85f08d.png

 

 

The same thing happens on other jenkins web pages, with all images contained in a custom CSS used by the Simple Theme Plugin.

 

Downgrading to Jenkins 2.263.1 solves the problem.

Reinstalling Jenkins 2.263.2 brings the problem back.

 

environment
Jenkins 2.263.2	<br/>
Custom Job Icon plugin 0.2<br/>
Simple Theme Plugin 0.6<br/>
Ubuntu 14.04.5 LTS<br/>
Google Chrome 87.0.4280.141

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions