You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Gary D. Gregory (Jira)" <ji...@apache.org> on 2023/06/14 13:10:00 UTC

[jira] [Comment Edited] (IO-785) FileUtils.deleteDirectory fails to delete directory on Azure AKS

    [ https://issues.apache.org/jira/browse/IO-785?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17732531#comment-17732531 ] 

Gary D. Gregory edited comment on IO-785 at 6/14/23 1:09 PM:
-------------------------------------------------------------

Hello [~iloncar],

Note that 2.13.0 is also available.


was (Author: garydgregory):
Note that 2.13.0 is also available.

> FileUtils.deleteDirectory fails to delete directory on Azure AKS 
> -----------------------------------------------------------------
>
>                 Key: IO-785
>                 URL: https://issues.apache.org/jira/browse/IO-785
>             Project: Commons IO
>          Issue Type: Bug
>          Components: Utilities
>    Affects Versions: 2.9.0
>         Environment: Azure Files Container Storage Interface (CSI) driver in Azure Kubernetes Service (AKS)
> apiVersion: storage.k8s.io/v1
> kind: StorageClass
> metadata:
>   annotations:
>     kubectl.kubernetes.io/last-applied-configuration: |
>       \{"apiVersion":"storage.k8s.io/v1","kind":"StorageClass","metadata":{"annotations":{},"name":"azure-aks-test-cluster-file-storage-class"},"mountOptions":["dir_mode=0777","file_mode=0777","uid=0","gid=0","mfsymlinks","cache=strict","actimeo=30"],"provisioner":"kubernetes.io/azure-file"}
>     storageclass.kubernetes.io/is-default-class: "false"
>   creationTimestamp: "2022-01-01T0-00:00:00Z"
>   name: azure-aks-test-cluster-file-storage-class
>   resourceVersion: "12768518"
>   uid: bc6-invalid-8c
> mountOptions:
> - dir_mode=0777
> - file_mode=0777
> - uid=0
> - gid=0
> - mfsymlinks
> - cache=strict
> - actimeo=30
> provisioner: kubernetes.io/azure-file
> reclaimPolicy: Delete
> volumeBindingMode: Immediate
>            Reporter: Ivica Loncar
>            Priority: Major
>
> On Azure AKS file persistent volume (https://learn.microsoft.com/en-us/azure/aks/azure-files-csi) we've got following exception:
>  
> org.apache.commons.io.IOExceptionList: work/bef4a1a575c54ac099816b6babf4bde9/job-3418
> 	at org.apache.commons.io.FileUtils.cleanDirectory(FileUtils.java:330)
> 	at org.apache.commons.io.FileUtils.deleteDirectory(FileUtils.java:1191)
> 	at com.xebialabs.xlrelease.remote.executor.k8s.KubeService.cleanWorkDir(KubeService.scala:107)
> 	at com.xebialabs.xlrelease.remote.executor.k8s.KubeJobExecutorService.cleanup(KubeJobExecutorService.scala:27)
> 	at com.xebialabs.xlrelease.remote.runner.JobRunnerActor.$anonfun$handleEvent$4(JobRunnerActor.scala:219)
> 	at com.xebialabs.xlrelease.remote.runner.JobRunnerActor.$anonfun$handleEvent$4$adapted(JobRunnerActor.scala:218)
> 	at scala.Option.foreach(Option.scala:437)
> 	at com.xebialabs.xlrelease.remote.runner.JobRunnerActor.com$xebialabs$xlrelease$remote$runner$JobRunnerActor$$handleEvent(JobRunnerActor.scala:218)
> 	at com.xebialabs.xlrelease.remote.runner.JobRunnerActor$$anonfun$receiveRecover$1.$anonfun$applyOrElse$2(JobRunnerActor.scala:45)
> 	at com.xebialabs.xlrelease.remote.runner.JobRunnerActor$$anonfun$receiveRecover$1.$anonfun$applyOrElse$2$adapted(JobRunnerActor.scala:45)
> 	at scala.Option.foreach(Option.scala:437)
> 	at com.xebialabs.xlrelease.remote.runner.JobRunnerActor$$anonfun$receiveRecover$1.applyOrElse(JobRunnerActor.scala:45)
> 	at scala.runtime.AbstractPartialFunction.apply(AbstractPartialFunction.scala:35)
> 	at akka.event.LoggingReceive.apply(LoggingReceive.scala:96)
> 	at akka.event.LoggingReceive.apply(LoggingReceive.scala:70)
> 	at akka.persistence.Eventsourced$$anon$2$$anonfun$1.applyOrElse(Eventsourced.scala:643)
> 	at akka.actor.Actor.aroundReceive(Actor.scala:537)
> 	at akka.actor.Actor.aroundReceive$(Actor.scala:535)
> 	at com.xebialabs.xlrelease.remote.runner.JobRunnerActor.akka$persistence$Eventsourced$$super$aroundReceive(JobRunnerActor.scala:22)
> 	at akka.persistence.Eventsourced$$anon$3.stateReceive(Eventsourced.scala:771)
> 	at akka.persistence.Eventsourced.aroundReceive(Eventsourced.scala:245)
> 	at akka.persistence.Eventsourced.aroundReceive$(Eventsourced.scala:244)
> 	at com.xebialabs.xlrelease.remote.runner.JobRunnerActor.aroundReceive(JobRunnerActor.scala:22)
> 	at akka.actor.ActorCell.receiveMessage(ActorCell.scala:579)
> 	at akka.actor.ActorCell.invoke(ActorCell.scala:547)
> 	at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:270)
> 	at akka.dispatch.Mailbox.run(Mailbox.scala:231)
> 	at akka.dispatch.Mailbox.exec(Mailbox.scala:243)
> 	at java.base/java.util.concurrent.ForkJoinTask.doExec(Unknown Source)
> 	at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(Unknown Source)
> 	at java.base/java.util.concurrent.ForkJoinPool.scan(Unknown Source)
> 	at java.base/java.util.concurrent.ForkJoinPool.runWorker(Unknown Source)
> 	at java.base/java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source)
> Caused by: java.io.IOException: Cannot delete file: work/bef4a1a575c54ac099816b6babf4bde9/job-3418/input
> 	at org.apache.commons.io.FileUtils.forceDelete(FileUtils.java:1343)
> 	at org.apache.commons.io.FileUtils.cleanDirectory(FileUtils.java:323)
> 	... 32 common frames omitted
> Caused by: org.apache.commons.io.IOExceptionList: work/bef4a1a575c54ac099816b6babf4bde9/job-3418/input
> 	at org.apache.commons.io.file.PathUtils.setReadOnly(PathUtils.java:944)
> 	at org.apache.commons.io.file.PathUtils.deleteFile(PathUtils.java:485)
> 	at org.apache.commons.io.file.PathUtils.delete(PathUtils.java:392)
> 	at org.apache.commons.io.FileUtils.forceDelete(FileUtils.java:1340)
> 	... 33 common frames omitted
> Caused by: java.nio.file.FileSystemException: work/bef4a1a575c54ac099816b6babf4bde9/job-3418/input: Operation not supported
> 	at java.base/sun.nio.fs.UnixException.translateToIOException(Unknown Source)
> 	at java.base/sun.nio.fs.UnixException.rethrowAsIOException(Unknown Source)
> 	at java.base/sun.nio.fs.UnixException.rethrowAsIOException(Unknown Source)
> 	at java.base/sun.nio.fs.LinuxDosFileAttributeView.updateDosAttribute(Unknown Source)
> 	at java.base/sun.nio.fs.LinuxDosFileAttributeView.setReadOnly(Unknown Source)
> 	at org.apache.commons.io.file.PathUtils.setReadOnly(PathUtils.java:919)
> 	... 36 common frames omitted
>  
> Deleting a directory using PathUtils and empty option list works, but is was not obvious what will happen.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)