[infinispan-issues] [JBoss JIRA] (ISPN-12056) Some tests are failing on windows when they try to delete the SingleFileStore

Gustavo Lira e Silva (Jira) issues at jboss.org
Thu Jun 25 10:08:29 EDT 2020


Gustavo Lira e Silva created ISPN-12056:
-------------------------------------------

             Summary: Some tests are failing on windows when they try to delete the SingleFileStore
                 Key: ISPN-12056
                 URL: https://issues.redhat.com/browse/ISPN-12056
             Project: Infinispan
          Issue Type: Bug
            Reporter: Gustavo Lira e Silva
            Assignee: Gustavo Lira e Silva


Some tests are failing on windows with the same reason, see some examples bellow:
{noformat}
java.lang.IllegalStateException: Cannot delete C:\j\workspace\jdg-8.0.x-jdg-func-ispn-testsuite-win-openjdk\4964bfc5\infinispan\core\target\infinispanTempFiles\ExpirationSingleFileStoreListenerFunctionalTest\0\defaultcache.dat owner=null permissions=[]
{noformat}
{noformat}
Java.lang.IllegalStateException: Cannot delete C:\j\workspace\jdg-8.0.x-jdg-func-ispn-testsuite-win-openjdk\4964bfc5\infinispan\core\target\infinispanTempFiles\AsyncStoreWithoutEvictionFunctionalTest\cache.dat owner=null permissions=[]
	at org.infinispan.commons.util.Util.recursiveDelete(Util.java:1046)
	at org.infinispan.commons.util.Util.recursiveDelete(Util.java:1032)
	at org.infinispan.commons.util.Util.recursiveFileRemove(Util.java:1022)
	at org.infinispan.commons.util.Util.recursiveFileRemove(Util.java:1011)
	at org.infinispan.persistence.support.AsyncStoreWithoutEvictionFunctionalTest.clearTempDir(AsyncStoreWithoutEvictionFunctionalTest.java:39)
{noformat}
{noformat}
java.lang.IllegalStateException: Cannot delete C:\j\workspace\jdg-8.0.x-jdg-func-ispn-testsuite-win-openjdk\4964bfc5\infinispan\core\target\infinispanTempFiles\ExpirationSingleFileStoreListenerFunctionalTest\0\defaultcache.dat owner=null permissions=[]
	at org.infinispan.commons.util.Util.recursiveDelete(Util.java:1046)
	at org.infinispan.commons.util.Util.recursiveDelete(Util.java:1032)
	at org.infinispan.commons.util.Util.recursiveDelete(Util.java:1032)
	at org.infinispan.commons.util.Util.recursiveFileRemove(Util.java:1022)
	at org.infinispan.commons.util.Util.recursiveFileRemove(Util.java:1011)
	at org.infinispan.expiration.impl.ExpirationSingleFileStoreListenerFunctionalTest.clearTempDir(ExpirationSingleFileStoreListenerFunctionalTest.java:46)
{noformat}
First of all we should change the old {{file.delete()}} which only return a boolean for {{Files.delete(file)}} which return an exception with a valuable information in case of the file couldn't be deleted.

The real reason for the file couldn't be delete on windows is
{noformat}
"the file is being used by another process"
{noformat}
The code bellow into {{org.infinispan.commons.util.Util#recursiveDelete}} solves the problem:
{noformat}
 Files.walk(f.toPath())
                 .sorted(Comparator.reverseOrder())
                 .map(Path::toFile)
                 .forEach(File::delete);
{noformat}



--
This message was sent by Atlassian Jira
(v7.13.8#713008)


More information about the infinispan-issues mailing list