[
https://jira.jboss.org/jira/browse/JBAS-6961?page=com.atlassian.jira.plug...
]
Brian Stansberry resolved JBAS-6961.
------------------------------------
Fix Version/s: JBossAS-6.0.0.M2
(was: JBossAS-6.0.0.M3)
Resolution: Done
The problem is File.delete() or File.deleteOnExit() don't work if the file is a
directory with children. You have to recurse to the bottom of the tree and delete the
leaves working your way back up. Well, not "you have to", more like "I have
to" ;)
simpleweb tests involving file-based cache loader fail if directories
and/or files exist
-----------------------------------------------------------------------------------------
Key: JBAS-6961
URL:
https://jira.jboss.org/jira/browse/JBAS-6961
Project: JBoss Application Server
Issue Type: Bug
Security Level: Public(Everyone can see)
Components: Clustering
Affects Versions: JBossAS-5.1.0.CR1
Environment: HPUX, risc architcture
Reporter: Richard Achmatowicz
Assignee: Brian Stansberry
Priority: Minor
Fix For: JBossAS-6.0.0.M2
The tests in org.jboss.test.cluster.defaultcfg.simpleweb.test which use a file-based
cache loader fail if a directory and/or file is left over from a previous failed
execution:
Error Message
init org.jboss.cache.config.Configuration@2f23dca failed
Stacktrace
org.jboss.cache.pojo.PojoCacheException: init
org.jboss.cache.config.Configuration@2f23dca failed
at org.jboss.cache.pojo.impl.PojoCacheImpl.<init>(PojoCacheImpl.java:75)
at org.jboss.cache.pojo.PojoCacheFactory.createCache(PojoCacheFactory.java:54)
at
org.jboss.test.cluster.testutil.SessionTestUtil.createCache(SessionTestUtil.java:137)
at
org.jboss.test.cluster.testutil.CacheConfigTestSetup.setUp(CacheConfigTestSetup.java:84)
at junit.extensions.TestSetup$1.protect(TestSetup.java:20)
at junit.extensions.TestSetup.run(TestSetup.java:25)
Caused by: org.jboss.cache.CacheException: java.lang.reflect.InvocationTargetException
at
org.jboss.cache.util.reflect.ReflectionUtil.invokeAccessibly(ReflectionUtil.java:148)
at
org.jboss.cache.factories.ComponentRegistry$PrioritizedMethod.invoke(ComponentRegistry.java:1012)
at
org.jboss.cache.factories.ComponentRegistry.internalStart(ComponentRegistry.java:778)
at org.jboss.cache.factories.ComponentRegistry.start(ComponentRegistry.java:632)
at
org.jboss.cache.invocation.CacheInvocationDelegate.start(CacheInvocationDelegate.java:345)
at org.jboss.cache.DefaultCacheFactory.createCache(DefaultCacheFactory.java:121)
at org.jboss.cache.pojo.impl.PojoCacheImpl.<init>(PojoCacheImpl.java:71)
Caused by: java.lang.reflect.InvocationTargetException
at
org.jboss.cache.util.reflect.ReflectionUtil.invokeAccessibly(ReflectionUtil.java:144)
Caused by: org.jboss.cache.CacheException: Unable to start cache loaders
at
org.jboss.cache.loader.CacheLoaderManager.startCacheLoader(CacheLoaderManager.java:467)
Caused by: java.io.IOException: Unable to create cache loader location
/var/tmp/BuddyReplicationFailoverUnitTestCase/1242786803043
at org.jboss.cache.loader.FileCacheLoader.create(FileCacheLoader.java:171)
at
org.jboss.cache.loader.CacheLoaderManager.startCacheLoader(CacheLoaderManager.java:459)
The file /var/tmp/BuddyReplicationFailoverUnitTestCase/1242786803043 cannot be created in
order to initialise the cache.
I have found that deleting the directory /var/tmp/BuddyReplicationFailoverUnitTestCase
and rerunning the tests fixes the problem.
I tried to recreate the problem by writing a small program which mimics the same file
creation process, used, but even if I left files in place, I couldn't recreate the
problem.
The tests pass OK otherwise.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira