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

Parameterized Trigger node label can get stuck

XMLWordPrintable

      If Build A is set up to trigger a project using "Build On Same Node", and the machine running Build A disconnects from Jenkins (crash, network issue, reboot, etc.), what happens is that Build B is queued with the appropriate label (say "build-7").

       

      Jenkins then cleans up the Label "build-7", because there are no machines with that label.  The machine reconnects, causing Jenkins to create a new Label "build-7".  However, the old Label instance representing the same label string (attached to the NodeAction in the plugin) is no longer referenced by Jenkins and can't be refreshed.

       

      The result is that the build waiting to build on "build-7" waits in the queue forever, even though the targeted machine is connected and live.  The expected behavior is that if a machine with a matching node label is live, the build should start.

       

      A workaround, today, is to go into the Script Console and manually kick the orphaned label, upon which the orphaned build will start immediately.  Example:

       

      Jenkins.getInstance().getQueue().buildables[0].getAssignedLabel().reset() 

       

       

            Unassigned Unassigned
            elliot_nelson Elliot Nelson
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: