On 02/02/2010 05:48 PM, Brian Stansberry wrote:
Adrian,
Today the AS testsuite runs on hudson are starting to fail
intermittently[1] due to the jboss-minimal-tests target's shutdown.sar
not stopping the AS. There seems to be a classloading problem when
ExitOnShutdown's anonymous Runnable tries to execute.[2]
I hypothesize that the classloader is (sometimes) being destroyed before
the thread gets going, causing it to be unable to load anything at all.
Two problems with this are:
1. The exit thread needs a functional classloader to get ahold of
java.lang.System
2. Regardless of the status of the classloader, java.* should always be
available (shouldn't it?)
To work around (1) I committed a patch to ExitOnShutdown which uses a
CountDownLatch to suspend the stopService() method for just long enough to
get ahold of a Runtime instance which can have .exit() called on it, thus
(hopefully) preventing the classloader from disappearing before that time.
So to duplicate this issue you'll have to revert that locally (rev 100309).
For (2), I leave it open for discussion I guess :)
- DML