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

File cleaning failure, old build and plugin update

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Critical Critical
    • core

      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

          [JENKINS-55448] File cleaning failure, old build and plugin update

          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.

          Alexander Schmacks added a comment - 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.

          Dan Hooper added a comment -

          I can also confirm downgrading to 2.156 fixed the problem.

          Dan Hooper added a comment - I can also confirm downgrading to 2.156 fixed the problem.

          Chad Williams added a comment -

          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
          

          Chad Williams added a comment - 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

          Uwe Schindler added a comment -

          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.

          Uwe Schindler added a comment - 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.

          Uwe Schindler added a comment - - edited

          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.

          Uwe Schindler added a comment - - edited 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.

          Alexander Schmacks added a comment - This doesn't apply to our setup. There's no symlink anywhere in the affected path.

          David Pintor added a comment - - edited

          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
          

          David Pintor added a comment - - edited 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

          Matt Sicker added a comment -

          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?

          Matt Sicker added a comment - 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?

          Matt Sicker added a comment -

          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.

          Matt Sicker added a comment - 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.

          Matt Sicker added a comment -

          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.

          Matt Sicker added a comment - 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.

          Matt Sicker added a comment - - edited

          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?

          Matt Sicker added a comment - - edited 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?

          Robert Koncier added a comment - - edited

          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.

          Robert Koncier added a comment - - edited 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.

          Matt Sicker added a comment -

          Thanks rkoncier, I'll give that a try.

          Matt Sicker added a comment - Thanks rkoncier , I'll give that a try.

          Matt Sicker added a comment - - edited

          What I tried:

          1. Create a freestyle project using the git repo https://github.com/jvz/example-java-docker.git
          2. Under Build Environment, I checked "Delete workspace before build starts" and Advanced
          3. Under Advanced, I added an include pattern for build/classes/** and also apply to directories.
          4. Under Build, add an "invoke gradle script" step to build the project.
          5. Save, build now.
          6. No errors.

          Matt Sicker added a comment - - edited 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:

          Robert Koncier added a comment - Sorry jvz I forgot mention I linked Jenkins workspace from different folder:

          Matt Sicker added a comment -

          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.

          Matt Sicker added a comment - 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.

          Matt Sicker added a comment -

          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.

          Matt Sicker added a comment - 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.

          Matt Sicker added a comment -

          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.

          Matt Sicker added a comment - 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.

          Baptiste Mathus added a comment - 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.

          rupkumar p added a comment -

          thanks and working fine now.

          rupkumar p added a comment - thanks and working fine now.

          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

          Etienne Jouvin added a comment - 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

          Daniel Beck added a comment -

          Fixed in 2.159.

          Daniel Beck added a comment - Fixed in 2.159.

            jvz Matt Sicker
            ejouvin Etienne Jouvin
            Votes:
            17 Vote for this issue
            Watchers:
            21 Start watching this issue

              Created:
              Updated:
              Resolved: