jenkinsci / jenkinsci/cloudbees-folder-plugin

[JENKINS-64056] Loading item percentages are erroneous

Open
#695 1 comment 0 reactions 0 assignees View on GitHub
component:cloudbees-folder-plugin imported-jira-issue priority:major resolution:unresolved
Dominant language
Java
Stars
59
Forks
117
PR merge metrics
No merged PRs in 30d

Description

The percentage that we see on startup when Jenkins is loading items are not reliable. Here is an example for a real environment:

2020-10-13 01:23:38.402+0000 [id=163]   INFO    c.c.h.p.folder.AbstractFolder$3#call: Loading job  (116.2%)

[...]
2020-10-13 01:24:08.407+0000 [id=163] INFO c.c.h.p.folder.AbstractFolder$3#call: Loading job (141.2%)
[...]
2020-10-13 01:25:38.548+0000 [id=163] INFO c.c.h.p.folder.AbstractFolder$3#call: Loading job (97.7%)
[...]
2020-10-13 01:26:53.732+0000 [id=163] INFO c.c.h.p.folder.AbstractFolder$3#call: Loading job (73.5%)
[...]
2020-10-13 01:32:39.660+0000 [id=163] INFO c.c.h.p.folder.AbstractFolder$3#call: Loading job (99.7%)

The total number of jobs that the percentage is calculated from is usually wrong because:


  • it is calculated by traversing $JENKINS_HOME/jobs and continue recursively when there is a jobs directory. However with Multibranch / Org job and (maybe other kind of item group) the item directory is different.

  • it is calculated / incremented asynchronously while items are be loaded

In the same case environment as above, we saw the first messages of AbstractFolder$3#call: Loading job ... at 01:23:38 but the total that is used to calculate the percentage is still incrementing until 01:27:27 (takes about 4 minutes):

2020-10-13 01:27:27.092+0000 [id=172]   INFO    jenkins.model.Jenkins$5#runTask: Took 246197ms for AbstractFolder.loadJobTotal by pool-9-thread-96

---
Originally reported by allan_burdajewicz, imported from: Loading item percentages are erroneous


  • assignee: fcojfernandez
  • status: Open
  • priority: Major
  • component(s): cloudbees-folder-plugin
  • resolution: Unresolved
  • votes: 1
  • watchers: 2
  • imported: 20251211-141027

Raw content of original issue

The percentage that we see on startup when Jenkins is loading items are not reliable. Here is an example for a real environment:


2020-10-13 01:23:38.402+0000 [id=163]   INFO    c.c.h.p.folder.AbstractFolder$3#call: Loading job <item1> (116.2%)

[...]
2020-10-13 01:24:08.407+0000 [id=163] INFO c.c.h.p.folder.AbstractFolder$3#call: Loading job <item2> (141.2%)
[...]
2020-10-13 01:25:38.548+0000 [id=163] INFO c.c.h.p.folder.AbstractFolder$3#call: Loading job <item3> (97.7%)
[...]
2020-10-13 01:26:53.732+0000 [id=163] INFO c.c.h.p.folder.AbstractFolder$3#call: Loading job <item4> (73.5%)
[...]
2020-10-13 01:32:39.660+0000 [id=163] INFO c.c.h.p.folder.AbstractFolder$3#call: Loading job <item5> (99.7%)

The total number of jobs that the percentage is calculated from is usually wrong because:


  • it is calculated by traversing $JENKINS_HOME/jobs and continue recursively when there is a jobs directory. However with Multibranch / Org job and (maybe other kind of item group) the item directory is different.

  • it is calculated / incremented asynchronously while items are be loaded

In the same case environment as above, we saw the first messages of AbstractFolder$3#call: Loading job ... at 01:23:38 but the total that is used to calculate the percentage is still incrementing until 01:27:27 (takes about 4 minutes):


2020-10-13 01:27:27.092+0000 [id=172]   INFO    jenkins.model.Jenkins$5#runTask: Took 246197ms for AbstractFolder.loadJobTotal by pool-9-thread-96


  • environment: cloudbees-folder: 6.14

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.