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

"no such computer" error occurs during SCM Pulling

      I am attempting to use a pipeline build triggered by github webhooks along with the kubernetes plugin.  I am seeing the following error in all of my poll logs:

      [poll] Latest remote head revision on refs/heads/master is: f4065637e80be6789d6d16c59ceee2cfde7b7ba9 - already built by 5

      ERROR: no such computer jenkins-slave-s10fr-lj69d

      Done. Took 0.58 sec No changes

      Looking at the plugin code there is a cache of what the workspace node has been in the past:

      https://github.com/jenkinsci/workflow-api-plugin/blob/63e8ad0c271573f4bebc57fb0776b3fac4fccea9/src/main/java/org/jenkinsci/plugins/workflow/FilePathUtils.java#L115

      Here is the line of code where the error is originating from:

      https://github.com/jenkinsci/workflow-job-plugin/blob/01f9e9bf32452a9d2ed7fa1e0ef92303e991a0c6/src/main/java/org/jenkinsci/plugins/workflow/job/WorkflowJob.java#L593

      Note that a workspace is required for the poll due to my use of "Additional Behaviors -> Polling ignores commits in certain paths"

      Assuming that a computer is available is an invalid assumption in the cloud where nodes are ephemeral.   I haven't yet come up with a work-around for this issue, so I am currently blocked.

      Thank you for your help!

          [JENKINS-46468] "no such computer" error occurs during SCM Pulling

          Will Gorman created issue -

          Andrew Bayer added a comment -

          Yeah, when you choose an option that requires a workspace (i.e., the "Polling ignores commits in certain paths"), you're stuck needing a workspace, strangely enough. =) In freestyle-land, when this scenario is encountered, a new build will get kicked off to get a new workspace to poll in, but I guess that's not happening for Pipeline (and I'm not sure we'd want it to happen for Pipeline - I'd like to avoid spamming builds in these sorts of situations). I don't have a quick answer for this, but I'll think on it.

          Andrew Bayer added a comment - Yeah, when you choose an option that requires a workspace (i.e., the "Polling ignores commits in certain paths"), you're stuck needing a workspace, strangely enough. =) In freestyle-land, when this scenario is encountered, a new build will get kicked off to get a new workspace to poll in, but I guess that's not happening for Pipeline (and I'm not sure we'd want it to happen for Pipeline - I'd like to avoid spamming builds in these sorts of situations). I don't have a quick answer for this, but I'll think on it.
          Sam Van Oort made changes -
          Priority Original: Blocker [ 1 ] New: Major [ 3 ]

          Sam Van Oort added a comment -

          abayer Would it make sense to reclassify this as an improvement?

          Sam Van Oort added a comment - abayer Would it make sense to reclassify this as an improvement?

          Andrew Bayer added a comment -

          Either that or close as a won't fix.

          Andrew Bayer added a comment - Either that or close as a won't fix.
          Sam Van Oort made changes -
          Issue Type Original: Bug [ 1 ] New: Improvement [ 4 ]

          Sam Van Oort added a comment -

          abayer Executing discretion here... it feels like this ought to be do-able in some way with enough cleverness without checking out to a build agent, but it's definitely not a bug. So reclassifying and dropping priority because it's kind of edge-casey and potentially complex as well.

          Sam Van Oort added a comment - abayer Executing discretion here... it feels like this ought to be do-able in some way with enough cleverness without checking out to a build agent, but it's definitely not a bug. So reclassifying and dropping priority because it's kind of edge-casey and potentially complex as well.
          Sam Van Oort made changes -
          Priority Original: Major [ 3 ] New: Minor [ 4 ]

          Andrew Bayer added a comment -

          svanoort - fwiw, if there's any possible resolution, it'd be to do what freestyle does (if I remember correctly) and kick off a build if polling requires a workspace but there isn't one available. Some polling options do always require a workspace, so that's what we've got to play with. shrug

          Andrew Bayer added a comment - svanoort - fwiw, if there's any possible resolution, it'd be to do what freestyle does (if I remember correctly) and kick off a build if polling requires a workspace but there isn't one available. Some polling options do always require a workspace, so that's what we've got to play with. shrug

          Gigi Jackson added a comment -

          We're running into this issue, although we're using the "polling ignores commits with certain message" additional behavior. I'm wondering if disabling lightweight checkout might be a work around. My understanding is that will cause the repo to be cloned on the master in order to get the Jenkinsfile. We use spot instances heavily for build agents, but master should always be up, and we'd definitely be willing to take the performance hit and do the comparison on a clone on master to get the build trigger behavior we want.

          Gigi Jackson added a comment - We're running into this issue, although we're using the "polling ignores commits with certain message" additional behavior. I'm wondering if disabling lightweight checkout might be a work around. My understanding is that will cause the repo to be cloned on the master in order to get the Jenkinsfile. We use spot instances heavily for build agents, but master should always be up, and we'd definitely be willing to take the performance hit and do the comparison on a clone on master to get the build trigger behavior we want.

            Unassigned Unassigned
            wgorman Will Gorman
            Votes:
            13 Vote for this issue
            Watchers:
            21 Start watching this issue

              Created:
              Updated: