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

Deadlock/Lockup when using "trigger/call builds on other projects" and "Block until the triggered projects finish their builds" is used with only 1 executor

    Details

    • Similar Issues:

      Description

      On a jenkins node that has 1 executor that is trying to execute an upstream job via the "trigger/call builds on other projects" build step, the job hangs indefinately or until the user-supplied timeout is reached.

      In the console for the main job, it shows:

      Waiting for the completion of <name-of-upstream-project>

      While the Jenkins dashboard shows the upstream project is trying to build, with the text:
      (pending - Waiting for next available executor )

      I would expect that the plugin would somehow be able to indicate to the jenkins node that only 1 executor is required.

        Attachments

          Issue Links

            Activity

            Hide
            tigerc Tiger Cheng added a comment -

            Also following and in agreement with Vasily that it is expected that if the childjob is asking for a node that is run by the parent node, that it should be allowed access to the node. Without this expectation working, our complex pipeline is unable to properly archive artifacts in the ideal clean manner it was designed for. The alternative is to seek for a solution to archive from nodes

            Show
            tigerc Tiger Cheng added a comment - Also following and in agreement with Vasily that it is expected that if the childjob is asking for a node that is run by the parent node, that it should be allowed access to the node. Without this expectation working, our complex pipeline is unable to properly archive artifacts in the ideal clean manner it was designed for. The alternative is to seek for a solution to archive from nodes
            Hide
            ptahchiev Petar Tahchiev added a comment - - edited

            I've just hit this issue My scenario is the following. I have several projects:

             - bom

             - platform

             - archetype

             - console

             - release-all

             

            The release-all is a pipeline build which calls release on each of them in the following order bom->platform->archetype->console However because I have just one executor running release-all blocks the executor and bom is never started to release because it is waiting for the next available executor.

             

            Show
            ptahchiev Petar Tahchiev added a comment - - edited I've just hit this issue My scenario is the following. I have several projects:  - bom  - platform  - archetype  - console  - release-all   The release-all is a pipeline build which calls release on each of them in the following order bom->platform->archetype->console However because I have just one executor running release-all blocks the executor and bom is never started to release because it is waiting for the next available executor.  
            Hide
            tamashegedus Tamas Hegedus added a comment -

            I have a single jenkins server with two executors. I cannot run two pipelines in parallel because it immediately gets deadlocked as it cannot start the child jobs. I wonder why doesn't this issue have critical priority. It renders pipeline jobs useless in most cases. JENKINS-26959 was set critical and was closed as a duplicate of this issue.

            Show
            tamashegedus Tamas Hegedus added a comment - I have a single jenkins server with two executors. I cannot run two pipelines in parallel because it immediately gets deadlocked as it cannot start the child jobs. I wonder why doesn't this issue have critical priority. It renders pipeline jobs useless in most cases. JENKINS-26959 was set critical and was closed as a duplicate of this issue.
            Hide
            jenkinsuser1234 Tobias Gierke added a comment -

            I just hit this bug, IMHO this is a core feature (being able to trigger another project and wait for it's completion without blocking an executor).

            Show
            jenkinsuser1234 Tobias Gierke added a comment - I just hit this bug, IMHO this is a core feature (being able to trigger another project and wait for it's completion without blocking an executor).
            Hide
            biodranik Alexander Borsuk added a comment -

            This is a critical issue that makes parallel/matrix builds unusable. In my pipeline I need to build for Mac and Linux. Obviously, it can be done in parallel. There are two build nodes available (Linux and Mac). The bug reproduces when one build node waits until another build node finishes. And another one waits until the first one finishes. This is a deadlock.

            Show
            biodranik Alexander Borsuk added a comment - This is a critical issue that makes parallel/matrix builds unusable. In my pipeline I need to build for Mac and Linux. Obviously, it can be done in parallel. There are two build nodes available (Linux and Mac). The bug reproduces when one build node waits until another build node finishes. And another one waits until the first one finishes. This is a deadlock.

              People

              • Assignee:
                huybrechts huybrechts
                Reporter:
                garen Garen Parham
              • Votes:
                36 Vote for this issue
                Watchers:
                38 Start watching this issue

                Dates

                • Created:
                  Updated: