Hi Dawid,
> 1) I assume you're running ant clean in jenkins before any tests commence; so > the buildup of stale files should be at most for a single run. YES. The workspace is clean before starting the build (Jenkins takes care). In addition, we run “ant clean” (as part of “ant jenkins”). This is also why I was confused about the file dates in the J0 folder (see screenshot), but those seem to be changed by the test. > you can 'terminate tests early' instead of trying to run all tests (and > possibly have multiple failures, each leaving a trail of poop behind. What would you like to propose? I just want that the J0 folder is cleaned after all tests were run (to work around the issue of single tests not cleaning up correctly). The easiest would be some “ant clean” solely on the tests temp folder after running tests (optional). I think this can be done with ANT (some target with <target name=”nukeTestDirs” if=”tests.cleanup.after.run”/> The question is: The J0 folder is removed automatically, if all tests succeed? Who is doing this? Maybe we can change that to also nuke the working folder if the tests failed (with the above property). I just don’t want to duplicate code. > So if you add -Dtests.maxfailures=1 then only a single Solr test would > actually leave those temporary files. Would this help? This would not help, as also succeeding tests leave the folders there (see screenshot). Uwe ----- Uwe Schindler H.-H.-Meier-Allee 63, D-28213 Bremen http://www.thetaphi.de <http://www.thetaphi.de/> eMail: [email protected] From: [email protected] [mailto:[email protected]] On Behalf Of Dawid Weiss Sent: Wednesday, March 26, 2014 10:08 AM To: [email protected] Subject: Re: [JENKINS] Lucene-Solr-trunk-Linux (32bit/jdk1.7.0_51) - Build # 9828 - Failure! The problem may be that if there are open file handles then these folders can't be removed by the JVM that created them until the process dies. I see a few solutions. 1) I assume you're running ant clean in jenkins before any tests commence; so the buildup of stale files should be at most for a single run. 2) you can 'terminate tests early' instead of trying to run all tests (and possibly have multiple failures, each leaving a trail of poop behind. This can be done by: # Repeats N times but skips any tests after the first failure or M # initial failures. ant test -Dtests.iters=N -Dtests.failfast=yes -Dtestcase=... ant test -Dtests.iters=N -Dtests.maxfailures=M -Dtestcase=... So if you add -Dtests.maxfailures=1 then only a single Solr test would actually leave those temporary files. Would this help? Dawid
