<i18n dev> testcase failure

David Holmes david.holmes at oracle.com
Tue Oct 4 09:04:33 PDT 2011


Thanks Chris and Alan.

On 4/10/2011 11:24 PM, Alan Bateman wrote:
> Chris Hegarty wrote:
>> Trivially, should the main thread in the test be waiting on the three
>> other threads to complete before exiting?
>>
>> I think jtreg will try to cleanup once the main thread completes. The
>> main thread should keep an array of the threads it creates and invoke
>> join() on each of them before returning from main. We do this all the
>> time in other areas.
> Right, once the main thread completes then jtreg will attempt to cleanup
> the remaining non-daemon threads in the thread group. It does this by
> interrupting each of the remaining threads in a loop up to a maximum
> number of rounds or until the remaining threads have terminated.

I wasn't aware of this behaviour from jtreg (but then I don't write such 
tests). It explains the jtreg "error". I expect the test threads are not 
responsive to interrupts (why should they be).

The reported ConcurrentModificationException would indicate a potential 
issue still remaining in the locale code.

David

It's
> possible that if the test is changed up to join on each of the 3 threads
> that this intermittent failure will go away. If so, then it suggests to
> me that perhaps the interrupt is causing a side effect that causes one
> of the threads to go into a loop block uninterruptedly. This is just a
> guess of course and it requires digging into the Locale code to come up
> with specific theories.
>
> -Alan.


More information about the i18n-dev mailing list