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

A current active build in the build history is lost if the job configuration XML uploaded

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Component/s: core
    • Labels:
      None
    • Similar Issues:

      Description

      If a job is currently building and new configuration is uploaded via an HTTP POST then the current build in build history is lost.

      Build information is maintained as transient state on the job object, which is reset and then reloaded from the build directory:

      @Override
      public void onLoad(ItemGroup<? extends Item> parent, String name) throws IOException {
      super.onLoad(parent, name);

      this.builds = new RunMap<R>();
      this.builds.load(this,new Constructor<R>() {
      public R create(File dir) throws IOException

      { return loadBuild(dir); }

      });

      However, the builds.load(...) ignores directories without a build.xml, which is the case when a build is currently building:

      public synchronized void load(Job job, Constructor<R> cons) {
      ....
      for( String build : buildDirs ) {
      File d = new File(buildDir,build);
      if(new File(d,"build.xml").exists()) {
      // if the build result file isn't in the directory, ignore it.
      try

      { R b = cons.create(d); builds.put( b.getNumber(), b ); }

      catch (IOException e)

      { e.printStackTrace(); } catch (InstantiationError e) { e.printStackTrace(); }

      }
      }

      The job will be out of sync with the persisted build history until the job is reloaded or saved.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                paulsandoz Paul Sandoz
              • Votes:
                0 Vote for this issue
                Watchers:
                4 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: