[
https://issues.apache.org/jira/browse/HARMONY-1933?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Gregory Shimansky updated HARMONY-1933:
---------------------------------------
Summary: [drlvm][test][smoke] Code for reproduction of hanged
gc.LOS test (was: [drlvm][test] Code for reproduction of hanged
gc.LOS test)
> [drlvm][test][smoke] Code for reproduction of hanged gc.LOS test
> ----------------------------------------------------------------
>
> Key: HARMONY-1933
> URL: https://issues.apache.org/jira/browse/HARMONY-1933
> Project: Harmony
> Issue Type: Test
> Components: DRLVM
> Environment: WinXP, msvc
> Reporter: Nikolay Chugunov
>
> I reduce code for gc.LOS test which reproduce hang of it. I should
notice that both gc.LOS and my test hang only on WinXP, but they pass
on Linux SuSe ia32, Win2003 OSs.
> package gc;
> public class LOS extends Thread {
> private static boolean started = false;
> private static Object lock = new Integer(1);
> public static void main(String[] args) throws
InterruptedException {
> Thread[] threads = new Thread[200];
> for (int i = 0; i < threads.length; i++) {
> threads[i] = new LOS();
> threads[i].start();
> }
> synchronized (lock) {
> started = true;
> lock.notifyAll();
> }
> System.out.println("Check point");
> // Sometimes hangs just with threads[0].join();
> for (int i = 0; i < threads.length; i++) {
> threads[i].join();
> }
> System.out.println("Passed");
> }
> public void run() {
> try {
> System.out.print(".");
> if (!started) {
> synchronized (lock) {
> lock.wait();
> }
> }
> Object[] objects = null;
> for (int i = 0; i < 1000; i++) {
> objects = new Object[] { objects, allocate() };
> }
> System.out.print(",");
> } catch (Throwable e) {
> System.out.print("Exception");
> }
> }
> private Object allocate() {
> try {
> exception();
> } catch (NullPointerException e) {
> }
> return new byte[4096];
> }
> private void exception() {
> String s = null;
> s.length();
> }
> }
> Sample output on RI:
>
................................................................................................................................................................
> ...............................Check point
>
.........ExceptionExceptionExceptionExceptionExceptionExceptionExceptionExceptio
>
nExceptionExceptionExceptionExceptionExceptionExceptionExceptionExceptionExcepti
>
onExceptionExceptionExceptionExceptionExceptionExceptionExceptionExceptionExcept
>
ionExceptionExceptionExceptionExceptionExceptionExceptionExceptionExceptionExcep
>
tionExceptionExceptionExceptionExceptionExceptionExceptionExceptionExceptionExce
>
ptionExceptionExceptionExceptionExceptionExceptionExceptionExceptionExceptionExc
>
eptionExceptionExceptionExceptionExceptionExceptionExceptionExceptionExceptionEx
>
ceptionExceptionExceptionExceptionExceptionExceptionExceptionExceptionExceptionE
>
xceptionExceptionExceptionExceptionExceptionExceptionExceptionExceptionException
>
ExceptionExceptionException,ExceptionExceptionExceptionExceptionExceptionExcepti
>
onExceptionExceptionExceptionExceptionExceptionExceptionExceptionExceptionExcept
>
ionExceptionExceptionExceptionExceptionExceptionException,ExceptionExceptionExce
>
ptionExceptionExceptionExceptionExceptionExceptionExceptionExceptionExceptionExc
>
eptionExceptionExceptionExceptionExceptionExceptionExceptionExceptionExceptionEx
>
ceptionExceptionExceptionExceptionExceptionExceptionExceptionExceptionExceptionE
>
xceptionExceptionExceptionExceptionExceptionExceptionExceptionExceptionException
>
ExceptionExceptionExceptionExceptionExceptionExceptionExceptionExceptionExceptio
>
nExceptionExceptionExceptionExceptionExceptionExceptionExceptionExceptionExcepti
>
onExceptionExceptionException,,,Exception,,Exception,ExceptionException,Exceptio
> nExceptionException,,,,,,,,,,,,,,,,,,,,,,Passed
> Sample output on r463908, (Oct 16 2006), Windows/ia32/msvc:
>
.....................................................................Check
point
>
...................................................................................................................................
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.