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

Pipeline locks not signalled on manual unreserving of resources

    XMLWordPrintable

Details

    • Bug
    • Status: Resolved (View Workflow)
    • Major
    • Resolution: Fixed
    • None
    • Jenkins 1.642.4.2 with Cloudbees Enterprise 15.11
      Lockable Resource plugin 1.8
      Lockable Resource plugin 2.2
    • Pipeline - April 2018
    • lockable-resources 2.3

    Description

      Add a lockable resource named "test_res"

      Add a pipeline job with only this code:

      node {

      lock('test_res') {
      echo 'locked'
      }
      echo 'unlocked'
      }

      Run this job. It should work fine.

      Now perform a manual reserve of the resource via the lockable resource interface.
      Start the job again.
      It correctly waits for the resource:
      [Pipeline] node {
      [Pipeline] Lock shared resource : Start
      Trying to acquire lock on [test_res]
      [test_res] is locked, waiting...

      Now go back to the Lockable Resource user interface.
      Manually unlock the resource.

      Expected result: the locked job should retry the lock, see that it has been freed, continue (locking the resource and freeing it) and finish correctly.

      Observed result: after waiting for > 5 minutes, nothing changed. The job stayed in exactly the same situation (output as above) and had to be cancelled.

      Attachments

        Issue Links

          Activity

            abayer Andrew Bayer added a comment -

            Gonna take some time this week to resurrect this.

            abayer Andrew Bayer added a comment - Gonna take some time this week to resurrect this.
            abayer Andrew Bayer added a comment -

            And PR updated.

            abayer Andrew Bayer added a comment - And PR updated.

            Code changed in jenkins
            User: Andrew Bayer
            Path:
            src/main/java/org/jenkins/plugins/lockableresources/LockableResourcesManager.java
            src/test/java/org/jenkins/plugins/lockableresources/LockStepTest.java
            http://jenkins-ci.org/commit/lockable-resources-plugin/d18f7baebe46220404a10175303bb0de41cdddb5
            Log:
            [FIXED JENKINS-34433] Signal queued Pipeline tasks on unreserve

            Previously, we had already been signalling queued Pipeline tasks on
            unlocking, but not on unreserving. So...let's do that.

            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Andrew Bayer Path: src/main/java/org/jenkins/plugins/lockableresources/LockableResourcesManager.java src/test/java/org/jenkins/plugins/lockableresources/LockStepTest.java http://jenkins-ci.org/commit/lockable-resources-plugin/d18f7baebe46220404a10175303bb0de41cdddb5 Log: [FIXED JENKINS-34433] Signal queued Pipeline tasks on unreserve Previously, we had already been signalling queued Pipeline tasks on unlocking, but not on unreserving. So...let's do that.
            abayer Andrew Bayer added a comment -

            Will be in next release (2.3?)

            abayer Andrew Bayer added a comment - Will be in next release (2.3?)
            sergiuionescu Sergiu Ionescu added a comment - - edited

            I can confirm the issue still occurs with version 2.2 and Jenkins ver. 2.91. Do you have an ETA for the next release?

             

            Thanks.

            sergiuionescu Sergiu Ionescu added a comment - - edited I can confirm the issue still occurs with version 2.2 and Jenkins ver. 2.91. Do you have an ETA for the next release?   Thanks.

            People

              abayer Andrew Bayer
              xvdessel Xavier Van Dessel
              Votes:
              17 Vote for this issue
              Watchers:
              22 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: