The view takes a long time to load with a lot of thread blocking, particularly after restarting Jenkins.
Thread dumps indicate that the problem lies in PipelineFactory.getUpstreamBuild() method during the Jenkins.getItem() call. It looks like there are two issues that compound the problem.
1. We use LDAP and Jenkins.getItem() does a lot of "hasPermissions" checks which are expensive.
2. The JQuery continues to submit additional requests to the server eventually filling up the entire thread pool.
1. Refactor the code to use a less expensive lookup of the project (e.g. Jenkins.getItemMap())
2. Do not submit another JQuery request if there is already one in progress.
|Field||Original Value||New Value|
|Assignee||Patrik Boström [ patbos ]|
|Status||Open [ 1 ]||Resolved [ 5 ]|
|Resolution||Fixed [ 1 ]|
|Status||Resolved [ 5 ]||Closed [ 6 ]|
|Workflow||JNJira [ 152849 ]||JNJira + In-Review [ 207245 ]|