Issue
- Jenkins UI is unresponsive and recovers after several minutes
- Job configuration pages take a long time to load
- You see slow requests and/or threads waiting with the following stacktraces:
[...]
hudson.security.ACL.hasPermission(ACL.java:73)
hudson.model.AbstractItem.hasPermission(AbstractItem.java:505)
hudson.model.Items.getAllItems(Items.java:365)
hudson.model.Items.getAllItems(Items.java:370)
hudson.model.Items.getAllItems(Items.java:346)
jenkins.model.Jenkins.getAllItems(Jenkins.java:1404)
hudson.plugins.promoted_builds.conditions.DownstreamPassCondition$RunListenerImpl.onCompleted(DownstreamPassCondition.java:220)
hudson.plugins.promoted_builds.conditions.DownstreamPassCondition$RunListenerImpl.onCompleted(DownstreamPassCondition.java:211)
[...]
Environment
-
CloudBees CI (CloudBees Core) on modern cloud platforms - Managed Master
-
CloudBees CI (CloudBees Core) on traditional platforms - Client Master
-
Promoted Builds Plugin < 2.29.1
Resolution
When using the DownstreamPassCondition of the Promoted Build Plugin - i.e. the option When the following downstream projects build successfully - Jenkins looks for a match among all items.
This is done via a RunListener.
Prior to version 2.29.1 of the plugin, the implementation of this Listener is terribly inefficient.
The fix is to update the Promoted Build Plugin to 2.29.1+.
See JENKINS-37368 for more information.
0 Comments