Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-19392

First-time display with many Maven jobs blocked in FingerprintAction.compact

      Even with the lazyloading (I just upgraded from 1.480.3) the startup of my instance is slow (~20min). After that it makes a long time (~10min) to display the UI (I'm using the dashboard plugin)
      here is a first Threads Dump while having a white screen : https://gist.github.com/aheritier/6363143
      Discussing on the ML jglick proposes this :

      Related to a performance fix in MavenModuleSetBuild.computeResult, but
      that is not really the cause. Probably FingerprintAction.onLoad need
      not call .compact synchronously; that would I think save a lot of
      time. File it.

          [JENKINS-19392] First-time display with many Maven jobs blocked in FingerprintAction.compact

          Jesse Glick added a comment -

          I think the root issue is in core, not the Maven plugin, though the presence of numerous Maven modules aggravates it.

          Jesse Glick added a comment - I think the root issue is in core, not the Maven plugin, though the presence of numerous Maven modules aggravates it.

          Andrew Bayer added a comment -

          We're seeing this over at https://builds.apache.org on a 1.564-SNAPSHOT build - initial startup takes ~30 minutes, with 1,158 total jobs and a lot of Maven modules (not even sure of that exact count yet...). Here's a jstack dump from during startup: https://gist.github.com/abayer/1c1393d739bb84911c25

          Andrew Bayer added a comment - We're seeing this over at https://builds.apache.org on a 1.564-SNAPSHOT build - initial startup takes ~30 minutes, with 1,158 total jobs and a lot of Maven modules (not even sure of that exact count yet...). Here's a jstack dump from during startup: https://gist.github.com/abayer/1c1393d739bb84911c25

          Code changed in jenkins
          User: Jesse Glick
          Path:
          changelog.html
          core/src/main/java/hudson/tasks/Fingerprinter.java
          http://jenkins-ci.org/commit/jenkins/2f59ffc475dc73a9a9cd5a7596819f3242c22f6f
          Log:
          [FIXED JENKINS-19392] Simpler and more efficient to use String.intern to compact fingerprint data.
          This should work across builds and even across jobs, and does not force us to load other builds.

          Compare: https://github.com/jenkinsci/jenkins/compare/c5c6bc050d49...2f59ffc475dc

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: changelog.html core/src/main/java/hudson/tasks/Fingerprinter.java http://jenkins-ci.org/commit/jenkins/2f59ffc475dc73a9a9cd5a7596819f3242c22f6f Log: [FIXED JENKINS-19392] Simpler and more efficient to use String.intern to compact fingerprint data. This should work across builds and even across jobs, and does not force us to load other builds. Compare: https://github.com/jenkinsci/jenkins/compare/c5c6bc050d49...2f59ffc475dc

          dogfood added a comment -

          Integrated in jenkins_main_trunk #3886
          [FIXED JENKINS-19392] Simpler and more efficient to use String.intern to compact fingerprint data. (Revision 2f59ffc475dc73a9a9cd5a7596819f3242c22f6f)

          Result = SUCCESS
          jesse glick : 2f59ffc475dc73a9a9cd5a7596819f3242c22f6f
          Files :

          • changelog.html
          • core/src/main/java/hudson/tasks/Fingerprinter.java

          dogfood added a comment - Integrated in jenkins_main_trunk #3886 [FIXED JENKINS-19392] Simpler and more efficient to use String.intern to compact fingerprint data. (Revision 2f59ffc475dc73a9a9cd5a7596819f3242c22f6f) Result = SUCCESS jesse glick : 2f59ffc475dc73a9a9cd5a7596819f3242c22f6f Files : changelog.html core/src/main/java/hudson/tasks/Fingerprinter.java

          Code changed in jenkins
          User: Jesse Glick
          Path:
          core/src/main/java/hudson/tasks/Fingerprinter.java
          http://jenkins-ci.org/commit/jenkins/dd2083aa4734836164b82a86608ad8a9ec353a02
          Log:
          [FIXED JENKINS-19392] Simpler and more efficient to use String.intern to compact fingerprint data.
          This should work across builds and even across jobs, and does not force us to load other builds.
          (cherry picked from commit 2f59ffc475dc73a9a9cd5a7596819f3242c22f6f)

          Conflicts:
          changelog.html

          Compare: https://github.com/jenkinsci/jenkins/compare/b8a559c820a9...dd2083aa4734

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: core/src/main/java/hudson/tasks/Fingerprinter.java http://jenkins-ci.org/commit/jenkins/dd2083aa4734836164b82a86608ad8a9ec353a02 Log: [FIXED JENKINS-19392] Simpler and more efficient to use String.intern to compact fingerprint data. This should work across builds and even across jobs, and does not force us to load other builds. (cherry picked from commit 2f59ffc475dc73a9a9cd5a7596819f3242c22f6f) Conflicts: changelog.html Compare: https://github.com/jenkinsci/jenkins/compare/b8a559c820a9...dd2083aa4734

          dogfood added a comment -

          Integrated in jenkins_main_trunk #4292
          [FIXED JENKINS-19392] Simpler and more efficient to use String.intern to compact fingerprint data. (Revision dd2083aa4734836164b82a86608ad8a9ec353a02)

          Result = UNSTABLE
          ogondza : dd2083aa4734836164b82a86608ad8a9ec353a02
          Files :

          • core/src/main/java/hudson/tasks/Fingerprinter.java

          dogfood added a comment - Integrated in jenkins_main_trunk #4292 [FIXED JENKINS-19392] Simpler and more efficient to use String.intern to compact fingerprint data. (Revision dd2083aa4734836164b82a86608ad8a9ec353a02) Result = UNSTABLE ogondza : dd2083aa4734836164b82a86608ad8a9ec353a02 Files : core/src/main/java/hudson/tasks/Fingerprinter.java

            jglick Jesse Glick
            aheritier Arnaud Héritier
            Votes:
            4 Vote for this issue
            Watchers:
            8 Start watching this issue

              Created:
              Updated:
              Resolved: