[ http://issues.apache.org/jira/browse/GERONIMO-777?page=all ]
Kevan Miller updated GERONIMO-777:
--
Fix Version: 1.1
(was: 1.0)
Version: 1.0
(was: 1.0-M3)
(was: 1.0-M4)
(was: 1.0-M5)
Most temporary/config-store files are now cleaned up on Windows, but not all...
We can do better, but I don't want to touch it right now. I'll fix the
remaining issues on HEAD.
FYI, thanks to John Sisson, if you use geronimo.sh or .bat, by default, temp
files will be stored in $GERONIMO_BASE/var/temp
Here's info on the current status...
config-store:
On unix, config-store directories will always be deleted on undeploy. On
windows, config-store directories will sometimes be deleted on undeploy.
jsp/servlets config-store directories are often deleted immediately. ejb's are
almost always locked by the ClassLoader and not deleted immediately. Until the
ClassLoader has been GC'ed, we won't be able to delete the directory. A
ThreadLocal reference is keeping the ClassLoader's alive. Until the thread is
used (and the threadlocal reference is overwritten, the ClassLoader won't be
GC'ed)delet. So, it may be a very long time before the ClassLoader is GC'ed. If
we're unable to delete the directory during undeploy processing, the directory
is queued for deletion. A config-store reaper will attempt to delete the
directory once a minute. The pending deletion queue is also persisted to disk.
So, on a restart, we'll be able to delete the directories.
temp files:
During deploy, temporary files are created by Deployer and DeploymentUtil.
Deployer files are deleted after use. On windoze, we're not always able to
delete these files. If we're unable to delete, the files/directories are placed
on a pending deletion queue. This queue is not persisted. If the server is
stopped, the files will never be deleted. This needs to be improved, but I
don't want to introduce this late in the game.
DeploymentUtil temporary files are not explicitly deleted. Instead,
deleteOnExit() is used to mark the files for deletion on process exit. As far
as I can tell, this works on unix systems, but not on Windows. Also, this means
that the files will exist for at the life of the server process (at a minimum).
I haven't made any changes to this. I think we should be more proactive
cleaning up this files, but again have not yet fixed.
Deployment files not removed on Windows
---
Key: GERONIMO-777
URL: http://issues.apache.org/jira/browse/GERONIMO-777
Project: Geronimo
Type: Bug
Versions: 1.0
Environment: Windows
Reporter: Jeremy Boynes
Assignee: Kevan Miller
Fix For: 1.1
When running on Windows, deployment leaves behind files and directories in
the user's temp directory. Due to the way temp file names are allocated, this
can result in deployment failures with an unintuitive AccessDenied
IOException. These files cannot be removed without shutting down the server.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira