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

If running build flow job is aborted, other concurrent and future builds don't run a node's executors.

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Duplicate
    • Icon: Minor Minor
    • build-flow-plugin
    • None
    • core: 1.565.2
      build flow plugin: 0.15

      When a build flow job is started on a node that was previously idle, then additional concurrent builds are started. If the first build is aborted, then the other builds, and all subsequent concurrent builds no longer run in an executor on that node.

      Steps to Reproduce

      1. Create a node which: has four or more executors, and the availability is set to "Take this slave on-line when in demand and off-line when idle."
      2. Create a free-style project job with a build step that calls "sleep 180"
      3. Create a build flow project which: has the "Flow run needs a workspace" set, starts a build of the job from the previous step, has "Execute concurrent builds if necessary" set, and is restricted to the node created in the first step.
      4. Confirm that the node created in the first step is idle and the slave agent has not started.
      5. Start a build. Observe that it runs on one of the executors.
      6. Start another build. Observe that it too runs on one of the executors.
      7. Cancel the first build.
      8. Observe that the second build is no longer running on an executor
      9. Start one or more jobs while the second job is also running and continue to observe them not running on any of the executors.

      The builds no longer are returned when Computer.getExecutors() is called, but they are with Computer.getOneOffExecutors().

            ndeloof Nicolas De Loof
            cfs Charles Stephens
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: