• Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Major Major
    • git-plugin

      (as an aside, I love the idea of Jenkins. Thanks for your hard work!)

      New user so it's possible I may have missed something basic, but I've been reading/testing for 4+ hours now.

      I don't even seem to be able to get to the point where I can pull the source from github (it fails while cleaning the workspace).

      I have tried reinstalling Jenkins from Program Files (x86) to C:\Jenkins, and then I eventually specified the specific workspace below of E:\JenkinsWorkspace to test it out. All are failing, so I ruled out spaces and extra-long paths I think.

      Happy to provide any other information to help troubleshoot. Looking forward to getting this solved!

      Build Output Log
      tarted by user anonymous
      Building in workspace E:\JenkinsWorkspace
      Checkout:JenkinsWorkspace / E:\JenkinsWorkspace - hudson.remoting.LocalChannel@1c1b26c
      Using strategy: Default
      Cloning the remote Git repository
      Cloning repository https://github.com/SeanKilleen/Skillustrator
      git --version
      Process leaked file descriptors. See http://wiki.jenkins-ci.org/display/JENKINS/Spawning+processes+from+build for more information
      ERROR: Failed to clean the workspace
      java.io.IOException: Unable to delete E:\JenkinsWorkspace
      	at hudson.Util.deleteFile(Util.java:243)
      	at hudson.Util.deleteRecursive(Util.java:293)
      	at hudson.FilePath$11.invoke(FilePath.java:982)
      	at hudson.FilePath$11.invoke(FilePath.java:980)
      	at hudson.FilePath.act(FilePath.java:851)
      	at hudson.FilePath.act(FilePath.java:824)
      	at hudson.FilePath.deleteRecursive(FilePath.java:980)
      	at hudson.plugins.git.GitAPI.clone(GitAPI.java:241)
      	at hudson.plugins.git.GitSCM$2.invoke(GitSCM.java:1044)
      	at hudson.plugins.git.GitSCM$2.invoke(GitSCM.java:986)
      	at hudson.FilePath.act(FilePath.java:851)
      	at hudson.FilePath.act(FilePath.java:824)
      	at hudson.plugins.git.GitSCM.determineRevisionToBuild(GitSCM.java:986)
      	at hudson.plugins.git.GitSCM.checkout(GitSCM.java:1142)
      	at hudson.model.AbstractProject.checkout(AbstractProject.java:1325)
      	at hudson.model.AbstractBuild$AbstractBuildExecution.defaultCheckout(AbstractBuild.java:676)
      	at jenkins.scm.SCMCheckoutStrategy.checkout(SCMCheckoutStrategy.java:88)
      	at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:581)
      	at hudson.model.Run.execute(Run.java:1516)
      	at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
      	at hudson.model.ResourceController.execute(ResourceController.java:88)
      	at hudson.model.Executor.run(Executor.java:236)
      ERROR: Error cloning remote repo 'origin' : Failed to delete workspace
      hudson.plugins.git.GitException: Failed to delete workspace
      	at hudson.plugins.git.GitAPI.clone(GitAPI.java:244)
      	at hudson.plugins.git.GitSCM$2.invoke(GitSCM.java:1044)
      	at hudson.plugins.git.GitSCM$2.invoke(GitSCM.java:986)
      	at hudson.FilePath.act(FilePath.java:851)
      	at hudson.FilePath.act(FilePath.java:824)
      	at hudson.plugins.git.GitSCM.determineRevisionToBuild(GitSCM.java:986)
      	at hudson.plugins.git.GitSCM.checkout(GitSCM.java:1142)
      	at hudson.model.AbstractProject.checkout(AbstractProject.java:1325)
      	at hudson.model.AbstractBuild$AbstractBuildExecution.defaultCheckout(AbstractBuild.java:676)
      	at jenkins.scm.SCMCheckoutStrategy.checkout(SCMCheckoutStrategy.java:88)
      	at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:581)
      	at hudson.model.Run.execute(Run.java:1516)
      	at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
      	at hudson.model.ResourceController.execute(ResourceController.java:88)
      	at hudson.model.Executor.run(Executor.java:236)
      Caused by: java.io.IOException: Unable to delete E:\JenkinsWorkspace
      	at hudson.Util.deleteFile(Util.java:243)
      	at hudson.Util.deleteRecursive(Util.java:293)
      	at hudson.FilePath$11.invoke(FilePath.java:982)
      	at hudson.FilePath$11.invoke(FilePath.java:980)
      	at hudson.FilePath.act(FilePath.java:851)
      	at hudson.FilePath.act(FilePath.java:824)
      	at hudson.FilePath.deleteRecursive(FilePath.java:980)
      	at hudson.plugins.git.GitAPI.clone(GitAPI.java:241)
      	... 14 more
      Trying next repository
      ERROR: Could not clone repository
      FATAL: Could not clone
      hudson.plugins.git.GitException: Could not clone
      	at hudson.plugins.git.GitSCM$2.invoke(GitSCM.java:1056)
      	at hudson.plugins.git.GitSCM$2.invoke(GitSCM.java:986)
      	at hudson.FilePath.act(FilePath.java:851)
      	at hudson.FilePath.act(FilePath.java:824)
      	at hudson.plugins.git.GitSCM.determineRevisionToBuild(GitSCM.java:986)
      	at hudson.plugins.git.GitSCM.checkout(GitSCM.java:1142)
      	at hudson.model.AbstractProject.checkout(AbstractProject.java:1325)
      	at hudson.model.AbstractBuild$AbstractBuildExecution.defaultCheckout(AbstractBuild.java:676)
      	at jenkins.scm.SCMCheckoutStrategy.checkout(SCMCheckoutStrategy.java:88)
      	at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:581)
      	at hudson.model.Run.execute(Run.java:1516)
      	at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
      	at hudson.model.ResourceController.execute(ResourceController.java:88)
      	at hudson.model.Executor.run(Executor.java:236)
      

          [JENKINS-15852] Unable to delete workspace

          Mark Waite added a comment -

          I would be quite surprised if the switch from git.cmd to git.exe was the root of the change, since the recursive remove step that is failing is not invoking either of them at the point of failure. It is possible that the results from git.cmd are different enough from those of git.exe that the path is not being executed, but that would be very surprising.

          I would guess (just guessing) that the deletion failure is due to Windows having a file busy in the directory and the timing is variable so that sometimes it works and sometimes it doesn't. I've seen cases where Windows virus scanners will have a file locked during a scan and other programs will be unable to delete those files.

          If it recurs, you might consider disabling virus scanning in the Jenkins workspace, just to see if that reduces the frequency.

          Mark Waite added a comment - I would be quite surprised if the switch from git.cmd to git.exe was the root of the change, since the recursive remove step that is failing is not invoking either of them at the point of failure. It is possible that the results from git.cmd are different enough from those of git.exe that the path is not being executed, but that would be very surprising. I would guess (just guessing) that the deletion failure is due to Windows having a file busy in the directory and the timing is variable so that sometimes it works and sometimes it doesn't. I've seen cases where Windows virus scanners will have a file locked during a scan and other programs will be unable to delete those files. If it recurs, you might consider disabling virus scanning in the Jenkins workspace, just to see if that reduces the frequency.

          We already had an exclusion setup for the Jenkins workspaces. My monitoring of the workspace folder using Process Explorer showed that wish.exe was the one holding on to it. I don't believe that gets called unless I use gitk.cmd.

          Daniel Kirkdorffer added a comment - We already had an exclusion setup for the Jenkins workspaces. My monitoring of the workspace folder using Process Explorer showed that wish.exe was the one holding on to it. I don't believe that gets called unless I use gitk.cmd.

          Linards L added a comment - - edited

          Just ENSURE NO ONE GOT ANY KIND OF DAMN windows handle / lock on that directory. Thats it. if you play nice and dont mess with workspace, Jenkins will be nice, too ...

          Linards L added a comment - - edited Just ENSURE NO ONE GOT ANY KIND OF DAMN windows handle / lock on that directory. Thats it. if you play nice and dont mess with workspace, Jenkins will be nice, too ...

          I'm having this problem as well. Its definitely file locking and not file path length. I've tested 1.474 and 1.500. I can't seem to fix the problem. Any suggestions? Google isn't helping much.

          David Neudorfer added a comment - I'm having this problem as well. Its definitely file locking and not file path length. I've tested 1.474 and 1.500. I can't seem to fix the problem. Any suggestions? Google isn't helping much.

          If you're using gitk.cmd I suggest switching to git.exe. I've not had the problem since doing so.

          Daniel Kirkdorffer added a comment - If you're using gitk.cmd I suggest switching to git.exe. I've not had the problem since doing so.

          Still having the same problem. Fresh install on a new server. Very confusing.

          David Neudorfer added a comment - Still having the same problem. Fresh install on a new server. Very confusing.

          This is the error I'm getting. http://pastebin.com/MN9iP66x

          David Neudorfer added a comment - This is the error I'm getting. http://pastebin.com/MN9iP66x

          When I try to delete the folder it says its in use. http://cl.ly/Me49 If I turn off the Jenkins service it still says its in use.

          David Neudorfer added a comment - When I try to delete the folder it says its in use. http://cl.ly/Me49 If I turn off the Jenkins service it still says its in use.

          wish.exe is causing this problem for me.

          David Neudorfer added a comment - wish.exe is causing this problem for me.

          If that's the case then you surely are using gitk.cmd and not git.exe directly. Check what your Jenkins config for Git installs are and that your job is using the one that calls git.exe directly.

          Daniel Kirkdorffer added a comment - If that's the case then you surely are using gitk.cmd and not git.exe directly. Check what your Jenkins config for Git installs are and that your job is using the one that calls git.exe directly.

            Unassigned Unassigned
            seankilleen Sean Killeen
            Votes:
            2 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated: