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

Regular 404s for running builds that get better after build is finished.

    Details

    • Type: Bug
    • Status: Open (View Workflow)
    • Priority: Major
    • Resolution: Unresolved
    • Labels:
      None
    • Environment:
    • Similar Issues:

      Description

      For some large (50%?) number of builds (across several projects):

      • The build starts.

      As expected:

      After running for several minutes:

      However:

      • the list of workers still shows the build as occupying the worker (and provides a link which goes to the now 404-ing build page)
      • the build runs to completion successfully.
      • Build-related URLs for other builds still work ok at this point.

      After the build has run to completion, all of the build related URLs which started 404ing work again (for example the complete console output can be seen).

      A screenshot of progressive console output breaking part way due to this is attached - to be clear, this happens for all URLs related to the build, not just the progressive console.

      This has happened in all of the weekly releases that I've tried (three or four over the past two months); previous to that I was not using Jenkins on this codebase/machine.

        Attachments

          Activity

          Hide
          danielbeck Daniel Beck added a comment -

          Looks like an issue in https://github.com/jenkinsci/multi-branch-project-plugin so assigned to that component.

          Show
          danielbeck Daniel Beck added a comment - Looks like an issue in https://github.com/jenkinsci/multi-branch-project-plugin so assigned to that component.
          Hide
          ivananishchuk Ivan Anishchuk added a comment -

          Any news? We've been suffering from this for a while now.

          Show
          ivananishchuk Ivan Anishchuk added a comment - Any news? We've been suffering from this for a while now.
          Hide
          benclifford Ben Clifford added a comment -

          I had a bit of a poke at this.

          At some point, the RunMap is being somehow refreshed/reloaded/reset for all branches in this job.

          When the RunMap subsequently tries to load the information for the sometimes-missing-build, it wants a build.xml file to be present in the build directory. That build.xml file is not present, so as far as RunMap.retrieve is concerned, this job does not exist.

          I don't know enough of Jenkins innards to know if: i) it is wrong that the RunMap is being emptied/reloaded or ii) build.xml should be present during the job run.

          Show
          benclifford Ben Clifford added a comment - I had a bit of a poke at this. At some point, the RunMap is being somehow refreshed/reloaded/reset for all branches in this job. When the RunMap subsequently tries to load the information for the sometimes-missing-build, it wants a build.xml file to be present in the build directory. That build.xml file is not present, so as far as RunMap.retrieve is concerned, this job does not exist. I don't know enough of Jenkins innards to know if: i) it is wrong that the RunMap is being emptied/reloaded or ii) build.xml should be present during the job run.
          Hide
          benclifford Ben Clifford added a comment -

          The refresh/reset/reload seems to happen here:

          at jenkins.model.lazy.AbstractLazyLoadRunMap.loadNumberOnDisk(AbstractLazyLoadRunMap.java:189)
          at jenkins.model.lazy.AbstractLazyLoadRunMap.initBaseDir(AbstractLazyLoadRunMap.java:153)
          at jenkins.model.lazy.AbstractLazyLoadRunMap.<init>(AbstractLazyLoadRunMap.java:145)
          at hudson.model.RunMap.<init>(RunMap.java:86)
          at jenkins.model.lazy.LazyBuildMixIn.createBuildRunMap(LazyBuildMixIn.java:131)
          at jenkins.model.lazy.LazyBuildMixIn.onCreatedFromScratch(LazyBuildMixIn.java:94)
          at hudson.model.AbstractProject.onCreatedFromScratch(AbstractProject.java:312)
          at com.cloudbees.hudson.plugins.folder.computed.ComputedFolder$1.created(ComputedFolder.java:180)
          at com.github.mjdetullio.jenkins.plugins.multibranch.AbstractMultiBranchProject.computeChildren(AbstractMultiBranchProject.java:634)
          at com.cloudbees.hudson.plugins.folder.computed.ComputedFolder.updateChildren(ComputedFolder.java:157)
          at com.cloudbees.hudson.plugins.folder.computed.FolderComputation.run(FolderComputation.java:122)
          at hudson.model.ResourceController.execute(ResourceController.java:98)
          at hudson.model.Executor.run(Executor.java:410)

          Show
          benclifford Ben Clifford added a comment - The refresh/reset/reload seems to happen here: at jenkins.model.lazy.AbstractLazyLoadRunMap.loadNumberOnDisk(AbstractLazyLoadRunMap.java:189) at jenkins.model.lazy.AbstractLazyLoadRunMap.initBaseDir(AbstractLazyLoadRunMap.java:153) at jenkins.model.lazy.AbstractLazyLoadRunMap.<init>(AbstractLazyLoadRunMap.java:145) at hudson.model.RunMap.<init>(RunMap.java:86) at jenkins.model.lazy.LazyBuildMixIn.createBuildRunMap(LazyBuildMixIn.java:131) at jenkins.model.lazy.LazyBuildMixIn.onCreatedFromScratch(LazyBuildMixIn.java:94) at hudson.model.AbstractProject.onCreatedFromScratch(AbstractProject.java:312) at com.cloudbees.hudson.plugins.folder.computed.ComputedFolder$1.created(ComputedFolder.java:180) at com.github.mjdetullio.jenkins.plugins.multibranch.AbstractMultiBranchProject.computeChildren(AbstractMultiBranchProject.java:634) at com.cloudbees.hudson.plugins.folder.computed.ComputedFolder.updateChildren(ComputedFolder.java:157) at com.cloudbees.hudson.plugins.folder.computed.FolderComputation.run(FolderComputation.java:122) at hudson.model.ResourceController.execute(ResourceController.java:98) at hudson.model.Executor.run(Executor.java:410)
          Hide
          benclifford Ben Clifford added a comment -

          It looks like this can be reproduced by clicking "Sync Branches" to cause the above update to happen. In my production environment, I have this scheduled to happen every 10 minutes or so.

          Show
          benclifford Ben Clifford added a comment - It looks like this can be reproduced by clicking "Sync Branches" to cause the above update to happen. In my production environment, I have this scheduled to happen every 10 minutes or so.

            People

            • Assignee:
              mjdetullio Matthew DeTullio
              Reporter:
              benclifford Ben Clifford
            • Votes:
              1 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated: