tomcat-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From bugzi...@apache.org
Subject DO NOT REPLY [Bug 29286] - Undeploy App does not delete WAR file
Date Wed, 14 Jul 2004 21:18:02 GMT
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://issues.apache.org/bugzilla/show_bug.cgi?id=29286>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://issues.apache.org/bugzilla/show_bug.cgi?id=29286

Undeploy App does not delete WAR file





------- Additional Comments From bugzilla.e.wuuza@xoxy.net  2004-07-14 21:18 -------
Line 848 of ManagerServlet is the culprit:
    stream = contextXml.openStream();

Behind the scenes this eventually opens a URLJarFile, which is what actually 
opens the handle to the war file that is left open.  That class has a finalizer 
to close() the handle.  However, by default jar files are cached by 
JarFileFactory, thus the finalizer won't run because of the static reference.  
I tried switching JarURLConnection.useCaches to false property while debugging 
so the factory would be bypassed, but the handle was still left open.  For some 
reason the finalizer is never ran.  URLConnection has no close-like method so 
there's no way to force this.

Anyway, this happens because of the new check for a context.xml in the war 
file, which didn't happen in 5.0.19.  However, setting the host deployXML to 
false doesn't help because then the manager app never loads.  The only 
workaround I can think of at this point is to install the 5.0.19 manager app on 
5.0.25.  Haven't tested that this works yet...

Sorry for the multitude of comments

---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-dev-help@jakarta.apache.org


Mime
View raw message