-
Bug
-
Resolution: Fixed
-
Critical
-
Powered by SuggestiMate
Version 2.157 on Ubuntu with Java Wrapper to start the isntance.
I am running into an issue where old builds are not getting cleaned up automatically or manually.
I notice that the folder is renamed with a dot. For example, build #4 the folder is renamed from 4 to .4
And the cleaning failed.
Deletion of the build failedRetry deleteShow reasonjenkins.util.io.CompositeIOException: Unable to delete '/var/opt/jenkins/runner/1.0/bin/linux-x86-64/../../data/jobs/tutorial_lombok/builds/.4'. Tried 3 times (of a maximum of 3) waiting 0,1 s between attempts.
at jenkins.util.io.PathRemover.forceRemoveRecursive(PathRemover.java:93)
at hudson.Util.deleteRecursive(Util.java:267)
at hudson.model.Run.delete(Run.java:1581)
at hudson.maven.MavenModuleSetBuild.delete(MavenModuleSetBuild.java:450)
at hudson.model.Run.doDoDelete(Run.java:2298)
at java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:627)
at org.kohsuke.stapler.Function$MethodFunction.invoke(Function.java:396)
at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:408)
at org.kohsuke.stapler.interceptor.RequirePOST$Processor.invoke(RequirePOST.java:77)
at org.kohsuke.stapler.PreInvokeInterceptedFunction.invoke(PreInvokeInterceptedFunction.java:26)
at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:212)
at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:145)
at org.kohsuke.stapler.MetaClass$11.doDispatch(MetaClass.java:537)
at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:58)
at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:739)
at org.kohsuke.stapler.Stapler.invoke(Stapler.java:870)
at org.kohsuke.stapler.MetaClass$9.dispatch(MetaClass.java:458)
at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:739)
at org.kohsuke.stapler.Stapler.invoke(Stapler.java:870)
at org.kohsuke.stapler.MetaClass$4.doDispatch(MetaClass.java:282)
at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:58)
at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:739)
at org.kohsuke.stapler.Stapler.invoke(Stapler.java:870)
at org.kohsuke.stapler.Stapler.invoke(Stapler.java:668)
at org.kohsuke.stapler.Stapler.service(Stapler.java:238)
Moreover, when I upgraded some plugin, Jenkins failed to restart saying that the deploy plugin folder could not be deleted.
After manually deleting the file .timestamp in the folder, it was OK.
Seems there is an issue with file having name starting with a dot.
Regards
Etienne
- is blocked by
-
JENKINS-55504 Multibranch pipeline doesn't delete old branches (they're crossed out)
-
- Closed
-
- is duplicated by
-
JENKINS-55450 Checkout of library to be used in a Pipeline script with SVN hangs
-
- Resolved
-
-
JENKINS-55498 CompositeIOException is thrown and Multibranch pipeline fails to load organization repos
-
- Resolved
-
-
JENKINS-55478 CompositeIOException when deleting workspace before check-out
-
- Resolved
-
- is related to
-
JENKINS-55450 Checkout of library to be used in a Pipeline script with SVN hangs
-
- Resolved
-
- relates to
-
JENKINS-55016 Fix UtilTest.testDeleteRecursive_onWindows flaky test
-
- Resolved
-
- links to
[JENKINS-55448] File cleaning failure, old build and plugin update
We experience the same/related issues: This is a critical bug for us, since test result parsing via the xUnit plugin fails and successful builds are marked as failures.
I can confirm that downgrading to 2.156 fixes the issue.
jenkins.util.io.CompositeIOException: Unable to remove directory /foo/bar/generatedJUnitFiles/d87f0d22-c235-43cd-8272-34ce92150592/GoogleTest with directory contents: [/foo/bar/generatedJUnitFiles/d87f0d22-c235-43cd-8272-34ce92150592/GoogleTest/TEST-809dd980-e514-4260-b749-9079e250f828.xml, /foo/bar/generatedJUnitFiles/d87f0d22-c235-43cd-8272-34ce92150592/GoogleTest/TEST-2d8be771-6364-49d8-9573-c51a974a44bc.xml] at jenkins.util.io.PathRemover.removeOrMakeRemovableThenRemove(PathRemover.java:233) at jenkins.util.io.PathRemover.tryRemoveFile(PathRemover.java:191) at jenkins.util.io.PathRemover.forceRemoveFile(PathRemover.java:71) at hudson.Util.deleteFile(Util.java:255) at hudson.FilePath.deleteRecursive(FilePath.java:1305) at hudson.FilePath.access$1600(FilePath.java:213) at hudson.FilePath$DeleteRecursive.invoke(FilePath.java:1274) at hudson.FilePath$DeleteRecursive.invoke(FilePath.java:1270) at hudson.FilePath$FileCallableWrapper.call(FilePath.java:3086) at hudson.remoting.UserRequest.perform(UserRequest.java:212) at hudson.remoting.UserRequest.perform(UserRequest.java:54) at hudson.remoting.Request$2.run(Request.java:369) 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:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745) java.nio.file.DirectoryNotEmptyException: /foo/bar/generatedJUnitFiles/d87f0d22-c235-43cd-8272-34ce92150592/GoogleTest 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 jenkins.util.io.PathRemover.removeOrMakeRemovableThenRemove(PathRemover.java:220) at jenkins.util.io.PathRemover.tryRemoveFile(PathRemover.java:191) at jenkins.util.io.PathRemover.forceRemoveFile(PathRemover.java:71) at hudson.Util.deleteFile(Util.java:255) at hudson.FilePath.deleteRecursive(FilePath.java:1305) at hudson.FilePath.access$1600(FilePath.java:213) at hudson.FilePath$DeleteRecursive.invoke(FilePath.java:1274) at hudson.FilePath$DeleteRecursive.invoke(FilePath.java:1270) at hudson.FilePath$FileCallableWrapper.call(FilePath.java:3086) at hudson.remoting.UserRequest.perform(UserRequest.java:212) at hudson.remoting.UserRequest.perform(UserRequest.java:54) at hudson.remoting.Request$2.run(Request.java:369) 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:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745) java.nio.file.DirectoryNotEmptyException: /foo/bar/generatedJUnitFiles/d87f0d22-c235-43cd-8272-34ce92150592/GoogleTest 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 jenkins.util.io.PathRemover.removeOrMakeRemovableThenRemove(PathRemover.java:224) at jenkins.util.io.PathRemover.tryRemoveFile(PathRemover.java:191) at jenkins.util.io.PathRemover.forceRemoveFile(PathRemover.java:71) at hudson.Util.deleteFile(Util.java:255) at hudson.FilePath.deleteRecursive(FilePath.java:1305) at hudson.FilePath.access$1600(FilePath.java:213) at hudson.FilePath$DeleteRecursive.invoke(FilePath.java:1274) at hudson.FilePath$DeleteRecursive.invoke(FilePath.java:1270) at hudson.FilePath$FileCallableWrapper.call(FilePath.java:3086) at hudson.remoting.UserRequest.perform(UserRequest.java:212) at hudson.remoting.UserRequest.perform(UserRequest.java:54) at hudson.remoting.Request$2.run(Request.java:369) 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:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745) Also: hudson.remoting.Channel$CallSiteStackTrace: Remote call to foo at hudson.remoting.Channel.attachCallSiteStackTrace(Channel.java:1743) at hudson.remoting.UserRequest$ExceptionResponse.retrieve(UserRequest.java:357) at hudson.remoting.Channel.call(Channel.java:957) at hudson.FilePath.act(FilePath.java:1072) at hudson.FilePath.act(FilePath.java:1061) at hudson.FilePath.deleteRecursive(FilePath.java:1268) at org.jenkinsci.plugins.xunit.XUnitProcessor.processDeletion(XUnitProcessor.java:456) at org.jenkinsci.plugins.xunit.XUnitProcessor.process(XUnitProcessor.java:166) at org.jenkinsci.plugins.xunit.XUnitBuilder.perform(XUnitBuilder.java:112) at org.jenkinsci.plugins.workflow.steps.CoreStep$Execution.run(CoreStep.java:80) at org.jenkinsci.plugins.workflow.steps.CoreStep$Execution.run(CoreStep.java:67) at org.jenkinsci.plugins.workflow.steps.SynchronousNonBlockingStepExecution$1$1.call(SynchronousNonBlockingStepExecution.java:51) at hudson.security.ACL.impersonate(ACL.java:290) at org.jenkinsci.plugins.workflow.steps.SynchronousNonBlockingStepExecution$1.run(SynchronousNonBlockingStepExecution.java:48) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) 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: java.io.IOException: Unable to delete '/foo/bar/generatedJUnitFiles/d87f0d22-c235-43cd-8272-34ce92150592/GoogleTest'. Tried 3 times (of a maximum of 3) waiting 0.1 sec between attempts. at jenkins.util.io.PathRemover.forceRemoveFile(PathRemover.java:75) at hudson.Util.deleteFile(Util.java:255) at hudson.FilePath.deleteRecursive(FilePath.java:1305) at hudson.FilePath.access$1600(FilePath.java:213) at hudson.FilePath$DeleteRecursive.invoke(FilePath.java:1274) at hudson.FilePath$DeleteRecursive.invoke(FilePath.java:1270) at hudson.FilePath$FileCallableWrapper.call(FilePath.java:3086) at hudson.remoting.UserRequest.perform(UserRequest.java:212) at hudson.remoting.UserRequest.perform(UserRequest.java:54) at hudson.remoting.Request$2.run(Request.java:369) 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:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745) Finished: FAILURE
We have seen the same issue when the jenkins home folder is a symlink. The issue went away, when we changed this to be an absolute path.
Maybe that's the reason for the whole thing: If anywhere in the path up to the root folder there is a symlink, the delete directory stuff breaks. In our case the home directory of jenkins was a symlink.
This doesn't apply to our setup. There's no symlink anywhere in the affected path.
I have a similar issue - same Jenkins version, also a symlink and running on Amazon Linux: old branches don't get deleted any more from the multibranch pipeline:
Processed 5 branches [Thu Jan 10 09:56:18 UTC 2019] Finished branch indexing. Indexing took 1.7 sec Evaluating orphaned items in Service Finder Multibranch Pipeline Will remove feature/SFD-927-notification-for-successful-feedback FATAL: Failed to recompute children of Service Finder Multibranch Pipeline jenkins.util.io.CompositeIOException: Unable to delete '/var/lib/jenkins/jobs/Service Finder Multibranch Pipeline/branches/feature-S.11lesgupt8tv.-feedback'. Tried 3 times (of a maximum of 3) waiting 0.1 sec between attempts. at jenkins.util.io.PathRemover.forceRemoveRecursive(PathRemover.java:93) at hudson.Util.deleteRecursive(Util.java:267) at hudson.model.AbstractItem.performDelete(AbstractItem.java:792) at org.jenkinsci.plugins.workflow.job.WorkflowJob.performDelete(WorkflowJob.java:664) at hudson.model.AbstractItem.delete(AbstractItem.java:776) at hudson.model.Job.delete(Job.java:677) at com.cloudbees.hudson.plugins.folder.computed.ComputedFolder.updateChildren(ComputedFolder.java:290) at com.cloudbees.hudson.plugins.folder.computed.FolderComputation.run(FolderComputation.java:165) at jenkins.branch.MultiBranchProject$BranchIndexing.run(MultiBranchProject.java:1025) at hudson.model.ResourceController.execute(ResourceController.java:97) at hudson.model.Executor.run(Executor.java:429) jenkins.util.io.CompositeIOException: Unable to remove directory /var/lib/jenkins/jobs/Service Finder Multibranch Pipeline/branches/feature-S.11lesgupt8tv.-feedback with directory contents: [/var/lib/jenkins/jobs/Service Finder Multibranch Pipeline/branches/feature-S.11lesgupt8tv.-feedback/builds, /var/lib/jenkins/jobs/Service Finder Multibranch Pipeline/branches/feature-S.11lesgupt8tv.-feedback/nextBuildNumber, /var/lib/jenkins/jobs/Service Finder Multibranch Pipeline/branches/feature-S.11lesgupt8tv.-feedback/name-utf8.txt, /var/lib/jenkins/jobs/Service Finder Multibranch Pipeline/branches/feature-S.11lesgupt8tv.-feedback/scm-revision-hash.xml, /var/lib/jenkins/jobs/Service Finder Multibranch Pipeline/branches/feature-S.11lesgupt8tv.-feedback/lastSuccessful, /var/lib/jenkins/jobs/Service Finder Multibranch Pipeline/branches/feature-S.11lesgupt8tv.-feedback/lastStable] at jenkins.util.io.PathRemover.removeOrMakeRemovableThenRemove(PathRemover.java:233) at jenkins.util.io.PathRemover.tryRemoveFile(PathRemover.java:191) at jenkins.util.io.PathRemover.tryRemoveRecursive(PathRemover.java:201) at jenkins.util.io.PathRemover.forceRemoveRecursive(PathRemover.java:90) at hudson.Util.deleteRecursive(Util.java:267) at hudson.model.AbstractItem.performDelete(AbstractItem.java:792) at org.jenkinsci.plugins.workflow.job.WorkflowJob.performDelete(WorkflowJob.java:664) at hudson.model.AbstractItem.delete(AbstractItem.java:776) at hudson.model.Job.delete(Job.java:677) at com.cloudbees.hudson.plugins.folder.computed.ComputedFolder.updateChildren(ComputedFolder.java:290) at com.cloudbees.hudson.plugins.folder.computed.FolderComputation.run(FolderComputation.java:165) at jenkins.branch.MultiBranchProject$BranchIndexing.run(MultiBranchProject.java:1025) at hudson.model.ResourceController.execute(ResourceController.java:97) at hudson.model.Executor.run(Executor.java:429) java.nio.file.DirectoryNotEmptyException: /var/lib/jenkins/jobs/Service Finder Multibranch Pipeline/branches/feature-S.11lesgupt8tv.-feedback 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 jenkins.util.io.PathRemover.removeOrMakeRemovableThenRemove(PathRemover.java:220) at jenkins.util.io.PathRemover.tryRemoveFile(PathRemover.java:191) at jenkins.util.io.PathRemover.tryRemoveRecursive(PathRemover.java:201) at jenkins.util.io.PathRemover.forceRemoveRecursive(PathRemover.java:90) at hudson.Util.deleteRecursive(Util.java:267) at hudson.model.AbstractItem.performDelete(AbstractItem.java:792) at org.jenkinsci.plugins.workflow.job.WorkflowJob.performDelete(WorkflowJob.java:664) at hudson.model.AbstractItem.delete(AbstractItem.java:776) at hudson.model.Job.delete(Job.java:677) at com.cloudbees.hudson.plugins.folder.computed.ComputedFolder.updateChildren(ComputedFolder.java:290) at com.cloudbees.hudson.plugins.folder.computed.FolderComputation.run(FolderComputation.java:165) at jenkins.branch.MultiBranchProject$BranchIndexing.run(MultiBranchProject.java:1025) at hudson.model.ResourceController.execute(ResourceController.java:97) at hudson.model.Executor.run(Executor.java:429) java.nio.file.DirectoryNotEmptyException: /var/lib/jenkins/jobs/Service Finder Multibranch Pipeline/branches/feature-S.11lesgupt8tv.-feedback 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 jenkins.util.io.PathRemover.removeOrMakeRemovableThenRemove(PathRemover.java:224) at jenkins.util.io.PathRemover.tryRemoveFile(PathRemover.java:191) at jenkins.util.io.PathRemover.tryRemoveRecursive(PathRemover.java:201) at jenkins.util.io.PathRemover.forceRemoveRecursive(PathRemover.java:90) at hudson.Util.deleteRecursive(Util.java:267) at hudson.model.AbstractItem.performDelete(AbstractItem.java:792) at org.jenkinsci.plugins.workflow.job.WorkflowJob.performDelete(WorkflowJob.java:664) at hudson.model.AbstractItem.delete(AbstractItem.java:776) at hudson.model.Job.delete(Job.java:677) at com.cloudbees.hudson.plugins.folder.computed.ComputedFolder.updateChildren(ComputedFolder.java:290) at com.cloudbees.hudson.plugins.folder.computed.FolderComputation.run(FolderComputation.java:165) at jenkins.branch.MultiBranchProject$BranchIndexing.run(MultiBranchProject.java:1025) at hudson.model.ResourceController.execute(ResourceController.java:97) at hudson.model.Executor.run(Executor.java:429) Finished: FAILURE
I tried using a symlink for my JENKINS_HOME and am not getting that error, though it looks like it's ignoring symlinks for deletion?
It looks like I had forgotten to update FilePath.deleteRecursive() and FilePath.deleteContents() to use the updated Util methods. This causes an inconsistency in behavior between deleting files directly versus deleting them via remoting APIs. I'll make a PR that you can try out to see if this fixes your issue.
I've opened a PR here: https://github.com/jenkinsci/jenkins/pull/3841
Please let me know if this fixes the problem you're seeing. This might only be a partial fix so far, though.
I've tried reproducing some of the scenarios provided, though I haven't been able to reproduce the issue (using my PR):
- Tried with JENKINS_HOME being a symlink.
- Tried using a multibranch pipeline (github) where branches get created and deleted later.
- Tried renaming my project to ".example" to test the leading dot.
However, I'd only expect my PR to have affected any stacktraces with FilePath.delete in them. Some of the stacktraces are executed on master, though, and I haven't been able to figure out how to reproduce that yet.
Is this issue affecting specific multibranch pipeline providers?
jvz could you please also try option to drop only specific sub-folder of the job. Here are my settings:
and I'm getting error immediately
10:40:37 [EnvInject] - Loading node environment variables.10:40:37 Building in workspace /var/lib/jenkins/workspace/xxx/DEV/dev1-xxx*10:40:37* [WS-CLEANUP] Deleting project workspace...10:40:43 ERROR: [WS-CLEANUP] Cannot delete workspace: Unable to delete '/var/lib/jenkins/workspace/xxx/DEV/dev1-xxx/bin/custom'. Tried 3 times (of a maximum of 3) waiting 0.1 sec between attempts.10:40:43 ERROR: Cannot delete workspace: Unable to delete '/var/lib/jenkins/workspace/xxx/DEV/dev1-xxx/bin/custom'. Tried 3 times (of a maximum of 3) waiting 0.1 sec between attempts.10:40:43 SSH: Current build result is [FAILURE], not going to run.10:40:43 Finished: FAILURE
Where bin/custom folder only files generated during java project compilation.
What I tried:
- Create a freestyle project using the git repo https://github.com/jvz/example-java-docker.git
- Under Build Environment, I checked "Delete workspace before build starts" and Advanced
- Under Advanced, I added an include pattern for build/classes/** and also apply to directories.
- Under Build, add an "invoke gradle script" step to build the project.
- Save, build now.
- No errors.
Sorry jvz I forgot mention I linked Jenkins workspace from different folder:
Alright, I've discovered one regression so far where a path like /var/foo/bar/../baz will not delete due to order of delete operations being reversed here since the parent is attempted to be deleted first. I have an idea on how this might be fixed now.
Think I've discovered the root cause here. The File API automatically normalized some file names, while Path does not by default. I've pushed those changes to the PR.
I've discovered a regression in Util.isSymlink that relates to the can't delete files in a symbolically linked Jenkins home (or other symlink issues). Including in this fix.
The code that introduced this regression has been reverted and merged in Jenkins core master branch (https://github.com/jenkinsci/jenkins/pull/3845).
An out-of-order release is being pushed out. Expect 2.159 in a few hours.
https://github.com/jenkinsci/jenkins/pull/3841 then will be worked on again to reach a satisfying end state fixing the original issue at stake.
Thanks.
It works for me also.
Just to not say everything is perfect
With the temporary regresssion, previous build were not cleanup. And I still have them in the job folder. For example :
drwxr-xr-x 2 jenkins jenkins 4096 janv. 7 14:12 .1/ drwxr-xr-x 2 jenkins jenkins 4096 janv. 8 01:41 .10/ drwxr-xr-x 2 jenkins jenkins 4096 janv. 8 01:45 .11/ drwxr-xr-x 2 jenkins jenkins 4096 janv. 8 16:24 .12/ drwxr-xr-x 2 jenkins jenkins 4096 janv. 8 17:21 .13/ drwxr-xr-x 2 jenkins jenkins 4096 janv. 8 17:42 .14/ drwxr-xr-x 2 jenkins jenkins 4096 janv. 8 17:54 .15/ lrwxrwxrwx 1 jenkins jenkins 2 janv. 14 13:15 15 -> 15 drwxr-xr-x 2 jenkins jenkins 4096 janv. 8 19:04 .16/ drwxr-xr-x 2 jenkins jenkins 4096 janv. 8 20:44 .17/ drwxr-xr-x 2 jenkins jenkins 4096 janv. 8 23:39 .18/ drwxr-xr-x 2 jenkins jenkins 4096 janv. 9 10:55 .19/ drwxr-xr-x 2 jenkins jenkins 4096 janv. 7 14:21 .2/ drwxr-xr-x 2 jenkins jenkins 4096 janv. 9 11:34 .20/ drwxr-xr-x 2 jenkins jenkins 4096 janv. 9 13:04 .21/ drwxr-xr-x 2 jenkins jenkins 4096 janv. 10 19:05 .22/ drwxr-xr-x 2 jenkins jenkins 4096 janv. 10 22:19 .23/ drwxr-xr-x 2 jenkins jenkins 4096 janv. 10 22:34 .24/ drwxr-xr-x 2 jenkins jenkins 4096 janv. 11 12:40 .25/ drwxr-xr-x 2 jenkins jenkins 4096 janv. 11 13:20 .26/ drwxr-xr-x 2 jenkins jenkins 4096 janv. 11 13:35 .27/ drwxr-xr-x 2 jenkins jenkins 4096 janv. 14 13:15 .28/ drwxr-xr-x 2 jenkins jenkins 4096 janv. 14 16:43 .29/ drwxr-xr-x 2 jenkins jenkins 4096 janv. 7 20:55 .3/ drwxr-xr-x 2 jenkins jenkins 4096 janv. 14 21:24 .30/ drwxr-xr-x 2 jenkins jenkins 4096 janv. 15 12:55 35/ drwxr-xr-x 2 jenkins jenkins 4096 janv. 15 13:05 36/ drwxr-xr-x 2 jenkins jenkins 4096 janv. 15 13:45 37/ drwxr-xr-x 2 jenkins jenkins 4096 janv. 15 22:35 38/ drwxr-xr-x 2 jenkins jenkins 4096 janv. 16 13:20 39/ drwxr-xr-x 2 jenkins jenkins 4096 janv. 7 21:23 .4/ drwxr-xr-x 2 jenkins jenkins 4096 janv. 7 23:39 .5/ lrwxrwxrwx 1 jenkins jenkins 1 janv. 8 01:45 5 -> 5 drwxr-xr-x 2 jenkins jenkins 4096 janv. 7 23:55 .6/ drwxr-xr-x 2 jenkins jenkins 4096 janv. 8 00:34 .7/ drwxr-xr-x 2 jenkins jenkins 4096 janv. 8 01:13 .8/ drwxr-xr-x 2 jenkins jenkins 4096 janv. 8 01:32 .9/ lrwxrwxrwx 1 jenkins jenkins 2 janv. 7 23:55 lastFailedBuild -> -1 lrwxrwxrwx 1 jenkins jenkins 2 janv. 16 13:20 lastStableBuild -> 39/ lrwxrwxrwx 1 jenkins jenkins 2 janv. 16 13:20 lastSuccessfulBuild -> 39/ lrwxrwxrwx 1 jenkins jenkins 2 janv. 15 22:35 lastUnstableBuild -> -1 lrwxrwxrwx 1 jenkins jenkins 2 janv. 15 22:35 lastUnsuccessfulBuild -> -1 -rw-r--r-- 1 jenkins jenkins 0 janv. 7 14:12 legacyIds
And also in all modules folders.
But not really a big deal. This is not a big things to do manually
Same for us: Jenkins 2.157 running in Tomcat 8.5 under Java 1.8.0_192-b12 on Red Hat 7.3 (Maipo).
Beginning with this version all jobs failed while trying to remove their workspace folder, which were indeed created by previous runs of that job.
Only a downgrade to Jenkins 2.156 helped.