Unkillable tasks

This issue is archived. You can view it, but you can't modify it. Learn more

XMLWordPrintable

      If you run a flow

      node {
          sh 'rm -rf * .*'
      }
      

      this deletes the control directory for the shell step while it is running, and it becomes impossible to abort the build.

      I think this is because FileMonitoringController.exitStatus just checks if jenkins-result.txt exists yet. But if the whole control dir is missing, it should return -1 or similar.

      Similar effect if you botch the $PATH so that echo cannot be found. In that case the control dir is present, but pid is not, so the controller assumes the process is still starting! It should impose a time limit on the startup phase.

      Was ameliorated by improving DurableTaskExecution.stop to do a hard kill if you try to stop the build twice. This makes the similar JENKINS-25678 much less of a problem.

            Assignee:
            Jesse Glick
            Reporter:
            Jesse Glick
            Archiver:
            Jenkins Service Account

              Created:
              Updated:
              Resolved:
              Archived: