ListView has problems with performance because it asks for all jobs while figuring out what jobs it contains. The reason we should care - it always asks for ACL. In our project we use RBAC plugin, we also have 3000 jobs in Jenkins which together kills the performance.

      Details:

      • ListView#202 here it asks for all items to find those that match the regexp pattern
      • ListView#171 again asks for all jobs just to get Items from Job Names
      • ListView#181 and again asks for all jobs for the sake of filtering.

      Solution:

      • ListView should get the list of items once and reuse it in all subsequent situation.
      • Instead of building a list of Job Names it's better to build a list of Items in ListView#202

          [JENKINS-18721] ListView asks for all jobs too often

          A Pull Request with the fix: https://github.com/jenkinsci/jenkins/pull/941

          Stanislav Bashkyrtsev added a comment - A Pull Request with the fix: https://github.com/jenkinsci/jenkins/pull/941

          Code changed in jenkins
          User: ctapobep
          Path:
          core/src/main/java/hudson/model/ListView.java
          http://jenkins-ci.org/commit/jenkins/ef74ed31a105f7b6c1e2925e8215b7ddb28d8304
          Log:
          JENKINS-18721 Imrovement of performance - now when ListView builds up it asks for all the jobs only once. This is important because RBAC plugin each time checks permissions for all these jobs which impacts performance

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: ctapobep Path: core/src/main/java/hudson/model/ListView.java http://jenkins-ci.org/commit/jenkins/ef74ed31a105f7b6c1e2925e8215b7ddb28d8304 Log: JENKINS-18721 Imrovement of performance - now when ListView builds up it asks for all the jobs only once. This is important because RBAC plugin each time checks permissions for all these jobs which impacts performance

          Code changed in jenkins
          User: Oliver Gondža
          Path:
          core/src/main/java/hudson/model/ListView.java
          http://jenkins-ci.org/commit/jenkins/a12c22d43d75f7c0772b834af0788018a1f12670
          Log:
          Merge pull request #941 from ctapobep/master

          [FIXED JENKINS-18721] Improvement of ListView render performance

          Compare: https://github.com/jenkinsci/jenkins/compare/259f16bdad2d...a12c22d43d75

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Oliver Gondža Path: core/src/main/java/hudson/model/ListView.java http://jenkins-ci.org/commit/jenkins/a12c22d43d75f7c0772b834af0788018a1f12670 Log: Merge pull request #941 from ctapobep/master [FIXED JENKINS-18721] Improvement of ListView render performance Compare: https://github.com/jenkinsci/jenkins/compare/259f16bdad2d...a12c22d43d75

          dogfood added a comment -

          Integrated in jenkins_main_trunk #2872
          JENKINS-18721 Imrovement of performance - now when ListView builds up it asks for all the jobs only once. This is important because RBAC plugin each time checks permissions for all these jobs which impacts performance (Revision ef74ed31a105f7b6c1e2925e8215b7ddb28d8304)

          Result = SUCCESS
          sbashkyrtsev : ef74ed31a105f7b6c1e2925e8215b7ddb28d8304
          Files :

          • core/src/main/java/hudson/model/ListView.java

          dogfood added a comment - Integrated in jenkins_main_trunk #2872 JENKINS-18721 Imrovement of performance - now when ListView builds up it asks for all the jobs only once. This is important because RBAC plugin each time checks permissions for all these jobs which impacts performance (Revision ef74ed31a105f7b6c1e2925e8215b7ddb28d8304) Result = SUCCESS sbashkyrtsev : ef74ed31a105f7b6c1e2925e8215b7ddb28d8304 Files : core/src/main/java/hudson/model/ListView.java

            Unassigned Unassigned
            ctapobep Stanislav Bashkyrtsev
            Votes:
            5 Vote for this issue
            Watchers:
            8 Start watching this issue

              Created:
              Updated:
              Resolved: