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

Test result trend breaks lazy-loading

XMLWordPrintable

      Observed in a customer installation of 1.554.3, including JENKINS-18065 backport, but reproducible in 1.575-SNAPSHOT. I created a freestyle project using https://github.com/jglick/simple-maven-project-with-tests with a shell step

      mvn -Dmaven.test.failure.ignore test
      

      reporting **/target/surefire-reports/TEST-*.xml and then triggering itself (even if unstable). After setting the system quiet period to 0 and kicking off an initial build, I let it run until it had produced 121 builds of various stability, then restarted Jenkins, running a logger of hudson.model.Run at FINER and hudson.model.RunMap at FINEST.

      Showing the dashboard (/) was fine: builds 120 and 121 were loaded since these are shown as the last stable and failed builds; 116-119 were loaded to complete the weather icon.

      So then I visited the job index page. 90-115 were loaded to show the most recent builds in the HistoryWidget in the sidebar, which is normal. But then the remaining 1-89 were also loaded:

      hudson.model.RunMap$ThisIsHowItsLoaded
      	at hudson.model.RunMap.retrieve(RunMap.java:221)
      	at hudson.model.RunMap.retrieve(RunMap.java:56)
      	at jenkins.model.lazy.AbstractLazyLoadRunMap.load(AbstractLazyLoadRunMap.java:688)
      	at jenkins.model.lazy.AbstractLazyLoadRunMap.load(AbstractLazyLoadRunMap.java:650)
      	at jenkins.model.lazy.AbstractLazyLoadRunMap.search(AbstractLazyLoadRunMap.java:382)
      	at jenkins.model.lazy.LazyBuildMixIn$RunMixIn.getPreviousBuild(LazyBuildMixIn.java:366)
      	at hudson.model.AbstractBuild.getPreviousBuild(AbstractBuild.java:198)
      	at hudson.tasks.test.AbstractTestResultAction.getPreviousResult(AbstractTestResultAction.java:187)
      	at hudson.tasks.test.AbstractTestResultAction.buildDataSet(AbstractTestResultAction.java:270)
      	at hudson.tasks.test.AbstractTestResultAction.doGraph(AbstractTestResultAction.java:232)
      	at hudson.tasks.test.TestResultProjectAction.doTrend(TestResultProjectAction.java:97)
      

      Indeed /test/trend shows the status of every build, not limited to the most recent.

            jglick Jesse Glick
            jglick Jesse Glick
            Votes:
            1 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated:
              Resolved: