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

UsageStatistics Page Decorator may get called during initialization.

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Minor Minor
    • core
    • Jenkins 1.625.2

      UsageStatistics#getStatData may get called while Jenkins is not completely initialized. As it navigates all top level items, it may cause unexpected effects in extensions and plugins affecting those items.

      Example stack trace:

              [.....]
      	at jenkins.model.Jenkins.getAllItems(Jenkins.java:1409)
      	at hudson.model.UsageStatistics.getStatData(UsageStatistics.java:160)
              [.....]
      	at org.apache.commons.jexl.util.PropertyExecutor.execute(PropertyExecutor.java:125)
      	at org.apache.commons.jexl.util.introspection.UberspectImpl$VelGetterImpl.invoke(UberspectImpl.java:314)
              [.....]
      	at org.kohsuke.stapler.jelly.JellyViewScript.run(JellyViewScript.java:95)
      	at org.kohsuke.stapler.jelly.IncludeTag.doTag(IncludeTag.java:147)
      	at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)
      	at org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:161)
      	at org.apache.commons.jelly.tags.core.ForEachTag.doTag(ForEachTag.java:150)
      	at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)
      	at org.apache.commons.jelly.tags.core.CoreTagLibrary$1.run(CoreTagLibrary.java:98)
      	at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)
              [.....]
      	at org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)
      	at org.kohsuke.stapler.jelly.JellyViewScript.run(JellyViewScript.java:95)
      	at org.kohsuke.stapler.jelly.DefaultScriptInvoker.invokeScript(DefaultScriptInvoker.java:63)
      	at org.kohsuke.stapler.jelly.DefaultScriptInvoker.invokeScript(DefaultScriptInvoker.java:53)
      	at org.kohsuke.stapler.jelly.JellyRequestDispatcher.forward(JellyRequestDispatcher.java:55)
      	at hudson.util.HudsonIsLoading.doDynamic(HudsonIsLoading.java:45)
      

          [JENKINS-32190] UsageStatistics Page Decorator may get called during initialization.

          Andres Rodriguez created issue -
          Andres Rodriguez made changes -
          Description Original: {{UsageStatistics#getStatData}} me get called while Jenkins is not completely initialized. As it navigates all top level items, it may cause unexpected effects in extensions and plugins affecting those items. New: {{UsageStatistics#getStatData}} may get called while Jenkins is not completely initialized. As it navigates all top level items, it may cause unexpected effects in extensions and plugins affecting those items.
          Andres Rodriguez made changes -
          Description Original: {{UsageStatistics#getStatData}} may get called while Jenkins is not completely initialized. As it navigates all top level items, it may cause unexpected effects in extensions and plugins affecting those items. New: {{UsageStatistics#getStatData}} may get called while Jenkins is not completely initialized. As it navigates all top level items, it may cause unexpected effects in extensions and plugins affecting those items.

          Example stack trace:

          {noformat}
                  [.....]
          at jenkins.model.Jenkins.getAllItems(Jenkins.java:1409)
          at hudson.model.UsageStatistics.getStatData(UsageStatistics.java:160)
                  [.....]
          at org.apache.commons.jexl.util.PropertyExecutor.execute(PropertyExecutor.java:125)
          at org.apache.commons.jexl.util.introspection.UberspectImpl$VelGetterImpl.invoke(UberspectImpl.java:314)
                  [.....]
          at org.kohsuke.stapler.jelly.JellyViewScript.run(JellyViewScript.java:95)
          at org.kohsuke.stapler.jelly.IncludeTag.doTag(IncludeTag.java:147)
          at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)
          at org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:161)
          at org.apache.commons.jelly.tags.core.ForEachTag.doTag(ForEachTag.java:150)
          at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)
          at org.apache.commons.jelly.tags.core.CoreTagLibrary$1.run(CoreTagLibrary.java:98)
          at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)
                  [.....]
          at org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)
          at org.kohsuke.stapler.jelly.JellyViewScript.run(JellyViewScript.java:95)
          at org.kohsuke.stapler.jelly.DefaultScriptInvoker.invokeScript(DefaultScriptInvoker.java:63)
          at org.kohsuke.stapler.jelly.DefaultScriptInvoker.invokeScript(DefaultScriptInvoker.java:53)
          at org.kohsuke.stapler.jelly.JellyRequestDispatcher.forward(JellyRequestDispatcher.java:55)
          at hudson.util.HudsonIsLoading.doDynamic(HudsonIsLoading.java:45)
          {noformat}
          Andres Rodriguez made changes -
          Remote Link New: This issue links to "PR (Web Link)" [ 13713 ]
          Andres Rodriguez made changes -
          Status Original: Open [ 1 ] New: In Progress [ 3 ]

          Code changed in jenkins
          User: Andres Rodriguez
          Path:
          core/src/main/java/hudson/model/UsageStatistics.java
          http://jenkins-ci.org/commit/jenkins/d8a13ac07c4357eb74ab45a03955c0db430e3aa9
          Log:
          JENKINS-32190 Make UsageStatistics#isDue check Jenkins init level before generating stats.

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Andres Rodriguez Path: core/src/main/java/hudson/model/UsageStatistics.java http://jenkins-ci.org/commit/jenkins/d8a13ac07c4357eb74ab45a03955c0db430e3aa9 Log: JENKINS-32190 Make UsageStatistics#isDue check Jenkins init level before generating stats.

          Code changed in jenkins
          User: Daniel Beck
          Path:
          core/src/main/java/hudson/model/UsageStatistics.java
          http://jenkins-ci.org/commit/jenkins/f71725202159a7fd1ba588c30ee0602477533370
          Log:
          Merge pull request #1963 from andresrc/JENKINS-32190

          JENKINS-32190 Check init status in UsageStatistics

          Compare: https://github.com/jenkinsci/jenkins/compare/aac48ad3386c...f71725202159

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Daniel Beck Path: core/src/main/java/hudson/model/UsageStatistics.java http://jenkins-ci.org/commit/jenkins/f71725202159a7fd1ba588c30ee0602477533370 Log: Merge pull request #1963 from andresrc/ JENKINS-32190 JENKINS-32190 Check init status in UsageStatistics Compare: https://github.com/jenkinsci/jenkins/compare/aac48ad3386c...f71725202159

          dogfood added a comment -

          Integrated in jenkins_main_trunk #4414
          JENKINS-32190 Make UsageStatistics#isDue check Jenkins init level (Revision d8a13ac07c4357eb74ab45a03955c0db430e3aa9)

          Result = SUCCESS
          arodriguez : d8a13ac07c4357eb74ab45a03955c0db430e3aa9
          Files :

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

          dogfood added a comment - Integrated in jenkins_main_trunk #4414 JENKINS-32190 Make UsageStatistics#isDue check Jenkins init level (Revision d8a13ac07c4357eb74ab45a03955c0db430e3aa9) Result = SUCCESS arodriguez : d8a13ac07c4357eb74ab45a03955c0db430e3aa9 Files : core/src/main/java/hudson/model/UsageStatistics.java
          Andres Rodriguez made changes -
          Resolution New: Fixed [ 1 ]
          Status Original: In Progress [ 3 ] New: Resolved [ 5 ]

          dogfood added a comment -

          Integrated in jenkins_2.0 #5
          JENKINS-32190 Make UsageStatistics#isDue check Jenkins init level (Revision d8a13ac07c4357eb74ab45a03955c0db430e3aa9)

          Result = SUCCESS
          arodriguez : d8a13ac07c4357eb74ab45a03955c0db430e3aa9
          Files :

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

          dogfood added a comment - Integrated in jenkins_2.0 #5 JENKINS-32190 Make UsageStatistics#isDue check Jenkins init level (Revision d8a13ac07c4357eb74ab45a03955c0db430e3aa9) Result = SUCCESS arodriguez : d8a13ac07c4357eb74ab45a03955c0db430e3aa9 Files : core/src/main/java/hudson/model/UsageStatistics.java

            andresrc Andres Rodriguez
            andresrc Andres Rodriguez
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: