The runtime shutdown hook seems not work well on windows box, after deploying the application, I found that the cache folder are still there. But it works perfectly on Linux. In the Java Doc, it says that : ---> Shutdown hooks should also finish their work quickly. When a program invokes exit </j2se6/api/java/lang/Runtime.html#exit%28int%29> the expectation is that the virtual machine will promptly shut down and exit. When the virtual machine is terminated due to user logoff or system shutdown the underlying operating system may only allow a fixed amount of time in which to shut down and exit. It is therefore inadvisable to attempt any user interaction or to perform a long-running computation in a shutdown hook. <--- The interesting thing is that if I added a breakpoint on the Utils.recursiveDelete(File) method, it does stop in the beginning, after the vm exits, I found not all the files are deleted. If I do not add a breakpoint, I found that no files in the cache folder are deleted. So maybe, the Linux filesystem is more efficient than windows, and it could finish the work quicky. I am thinking to move the delete action to the end of our calls. Thoughts ?
2010/4/23 Jarek Gawor <[email protected]> > David, > > I'm pretty sure I've fixed this problem now. Let me know if you are > still seeing this. > > Jarek > > On Wed, Apr 21, 2010 at 1:42 PM, David Jencks <[email protected]> > wrote: > > Running the tck uses enormous amounts of disk space. I ran a segment of > the tck on an external disk with enough room to complete and then ran > > > > du -k -d5 | sort -n -r >`pwd`/du.sort > > > > resulting in > > > > 93098988 . > > 92980992 ./target > > 92890460 ./target/geronimo-jetty-cts-3.0-SNAPSHOT > > 92775144 ./target/geronimo-jetty-cts-3.0-SNAPSHOT/var > > 111032 ./target/geronimo-jetty-cts-3.0-SNAPSHOT/repository > > 98316 ./target/geronimo-jetty-cts-3.0-SNAPSHOT/var/cache > > 86456 ./target/geronimo-jetty-cts-3.0-SNAPSHOT/repository/org > > 80208 ./target/geronimo-jetty-cts-3.0-SNAPSHOT/repository/org/apache > > 51776 > ./target/geronimo-jetty-cts-3.0-SNAPSHOT/var/appclient-947911712788451672-cache > > 51776 > ./target/geronimo-jetty-cts-3.0-SNAPSHOT/var/appclient-8972361681847594063-cache > > 51776 > ./target/geronimo-jetty-cts-3.0-SNAPSHOT/var/appclient-8793251233794673152-cache > > 51776 > ./target/geronimo-jetty-cts-3.0-SNAPSHOT/var/appclient-8197866693255499912-cache > > 51776 > ./target/geronimo-jetty-cts-3.0-SNAPSHOT/var/appclient-8120087245827162703-cache > > 51776 > ./target/geronimo-jetty-cts-3.0-SNAPSHOT/var/appclient-8026976859559185499-cache > > 51776 > ./target/geronimo-jetty-cts-3.0-SNAPSHOT/var/appclient-7847668082557068954-cache > > 51776 > ./target/geronimo-jetty-cts-3.0-SNAPSHOT/var/appclient-7675975637508862325-cache > > 51776 > ./target/geronimo-jetty-cts-3.0-SNAPSHOT/var/appclient-7124149591303814885-cache > > 51776 > ./target/geronimo-jetty-cts-3.0-SNAPSHOT/var/appclient-6995083686927663089-cache > > 51776 > ./target/geronimo-jetty-cts-3.0-SNAPSHOT/var/appclient-696779996475470199-cache > > 51776 > ./target/geronimo-jetty-cts-3.0-SNAPSHOT/var/appclient-6660318530596012182-cache > > 51776 > ./target/geronimo-jetty-cts-3.0-SNAPSHOT/var/appclient-6644263612218882052-cache > > ... (hundreds more app client caches) > > > > These are kb, so var has 93 gb. It looks to me as if the major problem > is that uninstalling an app doesn't remove the cache for any app clients it > may have included. > > > > Anyone have an idea how to fix this? > > > > thanks > > david jencks > > > > > -- Ivan
