jenkinsci / jenkinsci/git-plugin
[JENKINS-50729] exception when cleaning workspace
- Dominant language
- Java
- Stars
- 694
- Forks
- 1.1k
- Avg merge
- 1h 29m
- Merged PRs (30d)
- 3
Description
Jenkins is not able to clean workspace before updating strace git checkout. It crashes with
```
Started by upstream project "[strace]" build number [98]
originally caused by:
Started by an SCM change
Building remotely on
[p8-ppc64le]
(Fedora F27 ppc64le) in workspace /home/jenkins/workspace/strace/label/ppc64le
Cloning the remote Git repository
Cloning repository
[https://github.com/strace/strace.git]
ERROR: Failed to clean the workspace
java.io.IOException: Unable to delete '/home/jenkins/workspace/strace/label/ppc64le'. Tried 3 times (of a maximum of 3) waiting 0.1 sec between attempts.
at hudson.Util.deleteContentsRecursive(Util.java:238)
at org.jenkinsci.plugins.gitclient.CliGitAPIImpl$2.execute(CliGitAPIImpl.java:555)
at org.jenkinsci.plugins.gitclient.RemoteGitImpl$CommandInvocationHandler$1.call(RemoteGitImpl.java:153)
at org.jenkinsci.plugins.gitclient.RemoteGitImpl$CommandInvocationHandler$1.call(RemoteGitImpl.java:146)
at hudson.remoting.UserRequest.perform(UserRequest.java:210)
at hudson.remoting.UserRequest.perform(UserRequest.java:53)
at hudson.remoting.Request$2.run(Request.java:364)
at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.io.IOException: Unable to delete /home/jenkins/workspace/strace/label/ppc64le/tests/fsync-y.dir - files in dir: [/home/jenkins/workspace/strace/label/ppc64le/tests/fsync-y.dir/078 9
1
78 \'"<<0::0>>1~��]
at hudson.Util.tryOnceDeleteFile(Util.java:303)
at hudson.Util.tryOnceDeleteRecursive(Util.java:369)
at hudson.Util.tryOnceDeleteContentsRecursive(Util.java:388)
at hudson.Util.tryOnceDeleteRecursive(Util.java:368)
at hudson.Util.tryOnceDeleteContentsRecursive(Util.java:388)
at hudson.Util.deleteContentsRecursive(Util.java:233)
... 11 more
Caused by: java.nio.file.DirectoryNotEmptyException: /home/jenkins/workspace/strace/label/ppc64le/tests/fsync-y.dir
at sun.nio.fs.UnixFileSystemProvider.implDelete(UnixFileSystemProvider.java:242)
at sun.nio.fs.AbstractFileSystemProvider.deleteIfExists(AbstractFileSystemProvider.java:108)
at java.nio.file.Files.deleteIfExists(Files.java:1165)
at hudson.Util.tryOnceDeleteFile(Util.java:297)
... 16 more
ERROR: Error cloning remote repo 'origin'
hudson.plugins.git.GitException: Failed to delete workspace
at org.jenkinsci.plugins.gitclient.CliGitAPIImpl$2.execute(CliGitAPIImpl.java:558)
at org.jenkinsci.plugins.gitclient.RemoteGitImpl$CommandInvocationHandler$1.call(RemoteGitImpl.java:153)
at org.jenkinsci.plugins.gitclient.RemoteGitImpl$CommandInvocationHandler$1.call(RemoteGitImpl.java:146)
at hudson.remoting.UserRequest.perform(UserRequest.java:210)
at hudson.remoting.UserRequest.perform(UserRequest.java:53)
at hudson.remoting.Request$2.run(Request.java:364)
at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Suppressed: hudson.remoting.Channel$CallSiteStackTrace: Remote call to p8-ppc64le
at hudson.remoting.Channel.attachCallSiteStackTrace(Channel.java:1737)
at hudson.remoting.UserResponse.retrieve(UserRequest.java:313)
at hudson.remoting.Channel.call(Channel.java:952)
at org.jenkinsci.plugins.gitclient.RemoteGitImpl$CommandInvocationHandler.execute(RemoteGitImpl.java:146)
at sun.reflect.GeneratedMethodAccessor821.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.jenkinsci.plugins.gitclient.RemoteGitImpl$CommandInvocationHandler.invoke(RemoteGitImpl.java:132)
at com.sun.proxy.$Proxy66.execute(Unknown Source)
at hudson.plugins.git.GitSCM.retrieveChanges(GitSCM.java:1120)
at hudson.plugins.git.GitSCM.checkout(GitSCM.java:1160)
at hudson.scm.SCM.checkout(SCM.java:504)
at hudson.model.AbstractProject.checkout(AbstractProject.java:1203)
at hudson.model.AbstractBuild$AbstractBuildExecution.defaultCheckout(AbstractBuild.java:574)
at jenkins.scm.SCMCheckoutStrategy.checkout(SCMCheckoutStrategy.java:86)
at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:499)
at hudson.model.Run.execute(Run.java:1727)
at hudson.matrix.MatrixRun.run(MatrixRun.java:146)
at hudson.model.ResourceController.execute(ResourceController.java:97)
at hudson.model.Executor.run(Executor.java:429)
Caused by: java.io.IOException: Unable to delete '/home/jenkins/workspace/strace/label/ppc64le'. Tried 3 times (of a maximum of 3) waiting 0.1 sec between attempts.
at hudson.Util.deleteContentsRecursive(Util.java:238)
at org.jenkinsci.plugins.gitclient.CliGitAPIImpl$2.execute(CliGitAPIImpl.java:555)
... 10 more
Caused by: java.io.IOException: Unable to delete /home/jenkins/workspace/strace/label/ppc64le/tests/fsync-y.dir - files in dir: [/home/jenkins/workspace/strace/label/ppc64le/tests/fsync-y.dir/078 9
1
78 \'"<<0::0>>1~��]
at hudson.Util.tryOnceDeleteFile(Util.java:303)
at hudson.Util.tryOnceDeleteRecursive(Util.java:369)
at hudson.Util.tryOnceDeleteContentsRecursive(Util.java:388)
at hudson.Util.tryOnceDeleteRecursive(Util.java:368)
at hudson.Util.tryOnceDeleteContentsRecursive(Util.java:388)
at hudson.Util.deleteContentsRecursive(Util.java:233)
... 11 more
Caused by: java.nio.file.DirectoryNotEmptyException: /home/jenkins/workspace/strace/label/ppc64le/tests/fsync-y.dir
at sun.nio.fs.UnixFileSystemProvider.implDelete(UnixFileSystemProvider.java:242)
at sun.nio.fs.AbstractFileSystemProvider.deleteIfExists(AbstractFileSystemProvider.java:108)
at java.nio.file.Files.deleteIfExists(Files.java:1165)
at hudson.Util.tryOnceDeleteFile(Util.java:297)
... 16 more
ERROR: Error cloning remote repo 'origin'
Finished: FAILURE
```
Clearly there is a problem with non-ascii/non-utf8/crazy characters in the filenames created by strace test-suite
---
Originally reported by sharkcz, imported from: exception when cleaning workspace
Raw content of original issue
Jenkins is not able to clean workspace before updating strace git checkout. It crashes with
Started by upstream project "[strace]" build number [98]
originally caused by:
Started by an SCM change
Building remotely on
[p8-ppc64le]
(Fedora F27 ppc64le) in workspace /home/jenkins/workspace/strace/label/ppc64le
Cloning the remote Git repository
Cloning repository
[https://github.com/strace/strace.git]
ERROR: Failed to clean the workspace
java.io.IOException: Unable to delete '/home/jenkins/workspace/strace/label/ppc64le'. Tried 3 times (of a maximum of 3) waiting 0.1 sec between attempts.
at hudson.Util.deleteContentsRecursive(Util.java:238)
at org.jenkinsci.plugins.gitclient.CliGitAPIImpl$2.execute(CliGitAPIImpl.java:555)
at org.jenkinsci.plugins.gitclient.RemoteGitImpl$CommandInvocationHandler$1.call(RemoteGitImpl.java:153)
at org.jenkinsci.plugins.gitclient.RemoteGitImpl$CommandInvocationHandler$1.call(RemoteGitImpl.java:146)
at hudson.remoting.UserRequest.perform(UserRequest.java:210)
at hudson.remoting.UserRequest.perform(UserRequest.java:53)
at hudson.remoting.Request$2.run(Request.java:364)
at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.io.IOException: Unable to delete /home/jenkins/workspace/strace/label/ppc64le/tests/fsync-y.dir - files in dir: [/home/jenkins/workspace/strace/label/ppc64le/tests/fsync-y.dir/078 9
1
78 \'"<<0::0>>1~��]
at hudson.Util.tryOnceDeleteFile(Util.java:303)
at hudson.Util.tryOnceDeleteRecursive(Util.java:369)
at hudson.Util.tryOnceDeleteContentsRecursive(Util.java:388)
at hudson.Util.tryOnceDeleteRecursive(Util.java:368)
at hudson.Util.tryOnceDeleteContentsRecursive(Util.java:388)
at hudson.Util.deleteContentsRecursive(Util.java:233)
... 11 more
Caused by: java.nio.file.DirectoryNotEmptyException: /home/jenkins/workspace/strace/label/ppc64le/tests/fsync-y.dir
at sun.nio.fs.UnixFileSystemProvider.implDelete(UnixFileSystemProvider.java:242)
at sun.nio.fs.AbstractFileSystemProvider.deleteIfExists(AbstractFileSystemProvider.java:108)
at java.nio.file.Files.deleteIfExists(Files.java:1165)
at hudson.Util.tryOnceDeleteFile(Util.java:297)
... 16 more
ERROR: Error cloning remote repo 'origin'
hudson.plugins.git.GitException: Failed to delete workspace
at org.jenkinsci.plugins.gitclient.CliGitAPIImpl$2.execute(CliGitAPIImpl.java:558)
at org.jenkinsci.plugins.gitclient.RemoteGitImpl$CommandInvocationHandler$1.call(RemoteGitImpl.java:153)
at org.jenkinsci.plugins.gitclient.RemoteGitImpl$CommandInvocationHandler$1.call(RemoteGitImpl.java:146)
at hudson.remoting.UserRequest.perform(UserRequest.java:210)
at hudson.remoting.UserRequest.perform(UserRequest.java:53)
at hudson.remoting.Request$2.run(Request.java:364)
at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Suppressed: hudson.remoting.Channel$CallSiteStackTrace: Remote call to p8-ppc64le
at hudson.remoting.Channel.attachCallSiteStackTrace(Channel.java:1737)
at hudson.remoting.UserResponse.retrieve(UserRequest.java:313)
at hudson.remoting.Channel.call(Channel.java:952)
at org.jenkinsci.plugins.gitclient.RemoteGitImpl$CommandInvocationHandler.execute(RemoteGitImpl.java:146)
at sun.reflect.GeneratedMethodAccessor821.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.jenkinsci.plugins.gitclient.RemoteGitImpl$CommandInvocationHandler.invoke(RemoteGitImpl.java:132)
at com.sun.proxy.$Proxy66.execute(Unknown Source)
at hudson.plugins.git.GitSCM.retrieveChanges(GitSCM.java:1120)
at hudson.plugins.git.GitSCM.checkout(GitSCM.java:1160)
at hudson.scm.SCM.checkout(SCM.java:504)
at hudson.model.AbstractProject.checkout(AbstractProject.java:1203)
at hudson.model.AbstractBuild$AbstractBuildExecution.defaultCheckout(AbstractBuild.java:574)
at jenkins.scm.SCMCheckoutStrategy.checkout(SCMCheckoutStrategy.java:86)
at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:499)
at hudson.model.Run.execute(Run.java:1727)
at hudson.matrix.MatrixRun.run(MatrixRun.java:146)
at hudson.model.ResourceController.execute(ResourceController.java:97)
at hudson.model.Executor.run(Executor.java:429)
Caused by: java.io.IOException: Unable to delete '/home/jenkins/workspace/strace/label/ppc64le'. Tried 3 times (of a maximum of 3) waiting 0.1 sec between attempts.
at hudson.Util.deleteContentsRecursive(Util.java:238)
at org.jenkinsci.plugins.gitclient.CliGitAPIImpl$2.execute(CliGitAPIImpl.java:555)
... 10 more
Caused by: java.io.IOException: Unable to delete /home/jenkins/workspace/strace/label/ppc64le/tests/fsync-y.dir - files in dir: [/home/jenkins/workspace/strace/label/ppc64le/tests/fsync-y.dir/078 9
1
78 \'"<<0::0>>1~��]
at hudson.Util.tryOnceDeleteFile(Util.java:303)
at hudson.Util.tryOnceDeleteRecursive(Util.java:369)
at hudson.Util.tryOnceDeleteContentsRecursive(Util.java:388)
at hudson.Util.tryOnceDeleteRecursive(Util.java:368)
at hudson.Util.tryOnceDeleteContentsRecursive(Util.java:388)
at hudson.Util.deleteContentsRecursive(Util.java:233)
... 11 more
Caused by: java.nio.file.DirectoryNotEmptyException: /home/jenkins/workspace/strace/label/ppc64le/tests/fsync-y.dir
at sun.nio.fs.UnixFileSystemProvider.implDelete(UnixFileSystemProvider.java:242)
at sun.nio.fs.AbstractFileSystemProvider.deleteIfExists(AbstractFileSystemProvider.java:108)
at java.nio.file.Files.deleteIfExists(Files.java:1165)
at hudson.Util.tryOnceDeleteFile(Util.java:297)
... 16 more
ERROR: Error cloning remote repo 'origin'
Finished: FAILURE
Clearly there is a problem with non-ascii/non-utf8/crazy characters in the filenames created by strace test-suite
environment
```
Jenkins ver. 2.107.1
Git plugin 3.8.0
```
1 attachment
- [jenkins-clean-bug.tar.gz](https://issues.jenkins.io/secure/attachment/42173/jenkins-clean-bug.tar.gz)
Contributor guide
Assessment
This issue has not been assessed yet.