You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Ivan Popov (JIRA)" <ji...@apache.org> on 2007/03/09 11:58:24 UTC

[jira] Created: (HARMONY-3341) [jdktools][jpda] JDWP test org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest fails with "operation timed out"

[jdktools][jpda] JDWP test org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest fails with "operation timed out"
-----------------------------------------------------------------------------------------------------------------------

                 Key: HARMONY-3341
                 URL: https://issues.apache.org/jira/browse/HARMONY-3341
             Project: Harmony
          Issue Type: Bug
          Components: JDK
         Environment: Windows/ia32, Linux/ia32, Harmony-jdk-r515478
            Reporter: Ivan Popov


The following JDWP unit test

  org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest

fails on both Windows and Linux platforms with the same diagnostics:

testStop001: get threadID to Stop...
testStop001: ID of the tested thread to Stop = 1320
STDOUT> [SYNC] Message sent: ready
testStop001: get throwable for Stop command...
testStop001: throwable = ObjectID: 2040
testStop001: send "Stop" command
testStop001: wait for Debuggee message about test status...
[SYNC] Waiting...
STDOUT> TestedThread: Exception is caught: java.lang.NullPointerException
STDOUT> TestedThread: PASSED: It is expected Exception
<...>
org.apache.harmony.jpda.tests.framework.TestErrorException: java.net.SocketTimeoutException: The operation timed out 
at org.apache.harmony.jpda.tests.share.JPDADebuggeeSynchronizer.receiveMessage (JPDADebuggeeSynchronizer.java:132) 
at org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest.testStop001(StopTest.java:101) 
at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
Caused by: java.net.SocketTimeoutException: The operation timed out at org.apache.harmony.luni.net.PlainSocketImpl.read(PlainSocketImpl.java:544) 
at org.apache.harmony.luni.net.SocketInputStream.read(SocketInputStream.java:60) 
at java.io.DataInputStream.readUnsignedShort(DataInputStream.java) at java.io.DataInputStream.readUTF(DataInputStream.java) 
at org.apache.harmony.jpda.tests.share.JPDADebuggeeSynchronizer.receiveMessage(JPDADebuggeeSynchronizer.java:126) 
at org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest.testStop001(StopTest.java:101) 
... 13 more

The problem is that JVMTI function StopThread() does not throw specified exception in a waiting thread, until waiting timeout is expired.

To reproduce this failure:

1. create Harmony JDK with federated build:
    svn checkout https://svn.apache.org/repos/asf/harmony/enhanced/trunk
    cd trunk
    ant

2. goto jdktools directory, add junit to classpath, and run particular test:
    cd working_jdktools
    export CLASSPATH=<...>/trunk/common_resources/depends/jars/junit_3.8.2/junit.jar
    ant test -Dbuild.module=jpda -Dtest.case=org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest

3. see results in <...>/trunk/working_jdktools/build/test_report/html/index.html

It is possible also to run test directly from command line:
   cd working_jdktools
   deploy/jdk/bin/java -classpath ../common_resources/depends/jars/junit_3.8.2/junit.jar:build/tests/classes \
   org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest 


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Assigned: (HARMONY-3341) [drlvm][jvmti] StopThread() does not interrupt thread in Object.wait(timeout) until timeout expired

Posted by "Gregory Shimansky (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-3341?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Gregory Shimansky reassigned HARMONY-3341:
------------------------------------------

    Assignee: Gregory Shimansky

> [drlvm][jvmti] StopThread() does not interrupt thread in Object.wait(timeout) until timeout expired
> ---------------------------------------------------------------------------------------------------
>
>                 Key: HARMONY-3341
>                 URL: https://issues.apache.org/jira/browse/HARMONY-3341
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM, JDK
>         Environment: Windows/ia32, Linux/ia32, Harmony-jdk-r522770
>            Reporter: Ivan Popov
>            Assignee: Gregory Shimansky
>         Attachments: H3341-Added-interruption-of-stopped-thread.patch, H3341-Regression-test.patch
>
>
> The following JDWP unit test
>   org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest
> fails on both Windows and Linux platforms with the same diagnostics:
> testStop001: get threadID to Stop...
> testStop001: ID of the tested thread to Stop = 1320
> STDOUT> [SYNC] Message sent: ready
> testStop001: get throwable for Stop command...
> testStop001: throwable = ObjectID: 2040
> testStop001: send "Stop" command
> testStop001: wait for Debuggee message about test status...
> [SYNC] Waiting...
> STDOUT> TestedThread: Exception is caught: java.lang.NullPointerException
> STDOUT> TestedThread: PASSED: It is expected Exception
> <...>
> org.apache.harmony.jpda.tests.framework.TestErrorException: java.net.SocketTimeoutException: The operation timed out 
> at org.apache.harmony.jpda.tests.share.JPDADebuggeeSynchronizer.receiveMessage (JPDADebuggeeSynchronizer.java:132) 
> at org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest.testStop001(StopTest.java:101) 
> at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
> Caused by: java.net.SocketTimeoutException: The operation timed out at org.apache.harmony.luni.net.PlainSocketImpl.read(PlainSocketImpl.java:544) 
> at org.apache.harmony.luni.net.SocketInputStream.read(SocketInputStream.java:60) 
> at java.io.DataInputStream.readUnsignedShort(DataInputStream.java) at java.io.DataInputStream.readUTF(DataInputStream.java) 
> at org.apache.harmony.jpda.tests.share.JPDADebuggeeSynchronizer.receiveMessage(JPDADebuggeeSynchronizer.java:126) 
> at org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest.testStop001(StopTest.java:101) 
> ... 13 more
> The problem is that JVMTI function StopThread() does not throw specified exception in a waiting thread, until waiting timeout is expired.
> To reproduce this failure:
> 1. create Harmony JDK with federated build:
>     svn checkout https://svn.apache.org/repos/asf/harmony/enhanced/trunk
>     cd trunk
>     ant
> 2. goto jdktools directory, add junit to classpath, and run particular test:
>     cd working_jdktools
>     export CLASSPATH=<...>/trunk/common_resources/depends/jars/junit_3.8.2/junit.jar
>     ant test -Dbuild.module=jpda -Dtest.case=org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest
> 3. see results in <...>/trunk/working_jdktools/build/test_report/html/index.html
> It is possible also to run test directly from command line:
>    cd working_jdktools
>    deploy/jdk/bin/java -classpath ../common_resources/depends/jars/junit_3.8.2/junit.jar:build/tests/classes \
>    org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (HARMONY-3341) [drlvm][jvmti] StopThread() does not interrupt thread in Object.wait(timeout) until timeout expired

Posted by "Eugene S. Ostrovsky (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-3341?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Eugene S. Ostrovsky updated HARMONY-3341:
-----------------------------------------

    Attachment: H3341-Regression-test.patch

Added patch:
  H3341-Regression-test.patch

Regression test for the issue

> [drlvm][jvmti] StopThread() does not interrupt thread in Object.wait(timeout) until timeout expired
> ---------------------------------------------------------------------------------------------------
>
>                 Key: HARMONY-3341
>                 URL: https://issues.apache.org/jira/browse/HARMONY-3341
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM, JDK
>         Environment: Windows/ia32, Linux/ia32, Harmony-jdk-r522770
>            Reporter: Ivan Popov
>         Attachments: H3341-Regression-test.patch
>
>
> The following JDWP unit test
>   org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest
> fails on both Windows and Linux platforms with the same diagnostics:
> testStop001: get threadID to Stop...
> testStop001: ID of the tested thread to Stop = 1320
> STDOUT> [SYNC] Message sent: ready
> testStop001: get throwable for Stop command...
> testStop001: throwable = ObjectID: 2040
> testStop001: send "Stop" command
> testStop001: wait for Debuggee message about test status...
> [SYNC] Waiting...
> STDOUT> TestedThread: Exception is caught: java.lang.NullPointerException
> STDOUT> TestedThread: PASSED: It is expected Exception
> <...>
> org.apache.harmony.jpda.tests.framework.TestErrorException: java.net.SocketTimeoutException: The operation timed out 
> at org.apache.harmony.jpda.tests.share.JPDADebuggeeSynchronizer.receiveMessage (JPDADebuggeeSynchronizer.java:132) 
> at org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest.testStop001(StopTest.java:101) 
> at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
> Caused by: java.net.SocketTimeoutException: The operation timed out at org.apache.harmony.luni.net.PlainSocketImpl.read(PlainSocketImpl.java:544) 
> at org.apache.harmony.luni.net.SocketInputStream.read(SocketInputStream.java:60) 
> at java.io.DataInputStream.readUnsignedShort(DataInputStream.java) at java.io.DataInputStream.readUTF(DataInputStream.java) 
> at org.apache.harmony.jpda.tests.share.JPDADebuggeeSynchronizer.receiveMessage(JPDADebuggeeSynchronizer.java:126) 
> at org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest.testStop001(StopTest.java:101) 
> ... 13 more
> The problem is that JVMTI function StopThread() does not throw specified exception in a waiting thread, until waiting timeout is expired.
> To reproduce this failure:
> 1. create Harmony JDK with federated build:
>     svn checkout https://svn.apache.org/repos/asf/harmony/enhanced/trunk
>     cd trunk
>     ant
> 2. goto jdktools directory, add junit to classpath, and run particular test:
>     cd working_jdktools
>     export CLASSPATH=<...>/trunk/common_resources/depends/jars/junit_3.8.2/junit.jar
>     ant test -Dbuild.module=jpda -Dtest.case=org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest
> 3. see results in <...>/trunk/working_jdktools/build/test_report/html/index.html
> It is possible also to run test directly from command line:
>    cd working_jdktools
>    deploy/jdk/bin/java -classpath ../common_resources/depends/jars/junit_3.8.2/junit.jar:build/tests/classes \
>    org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (HARMONY-3341) [drlvm][jvmti] StopThread() does not interrupt thread in Object.wait(timeout) until timeout expired

Posted by "Eugene S. Ostrovsky (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-3341?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Eugene S. Ostrovsky updated HARMONY-3341:
-----------------------------------------

    Attachment: H3341-Added-interruption-of-stopped-thread.patch

Added patch:
  H3341-Added-interruption-of-stopped-thread.patch

Fix for the issue.

> [drlvm][jvmti] StopThread() does not interrupt thread in Object.wait(timeout) until timeout expired
> ---------------------------------------------------------------------------------------------------
>
>                 Key: HARMONY-3341
>                 URL: https://issues.apache.org/jira/browse/HARMONY-3341
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM, JDK
>         Environment: Windows/ia32, Linux/ia32, Harmony-jdk-r522770
>            Reporter: Ivan Popov
>         Attachments: H3341-Added-interruption-of-stopped-thread.patch, H3341-Regression-test.patch
>
>
> The following JDWP unit test
>   org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest
> fails on both Windows and Linux platforms with the same diagnostics:
> testStop001: get threadID to Stop...
> testStop001: ID of the tested thread to Stop = 1320
> STDOUT> [SYNC] Message sent: ready
> testStop001: get throwable for Stop command...
> testStop001: throwable = ObjectID: 2040
> testStop001: send "Stop" command
> testStop001: wait for Debuggee message about test status...
> [SYNC] Waiting...
> STDOUT> TestedThread: Exception is caught: java.lang.NullPointerException
> STDOUT> TestedThread: PASSED: It is expected Exception
> <...>
> org.apache.harmony.jpda.tests.framework.TestErrorException: java.net.SocketTimeoutException: The operation timed out 
> at org.apache.harmony.jpda.tests.share.JPDADebuggeeSynchronizer.receiveMessage (JPDADebuggeeSynchronizer.java:132) 
> at org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest.testStop001(StopTest.java:101) 
> at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
> Caused by: java.net.SocketTimeoutException: The operation timed out at org.apache.harmony.luni.net.PlainSocketImpl.read(PlainSocketImpl.java:544) 
> at org.apache.harmony.luni.net.SocketInputStream.read(SocketInputStream.java:60) 
> at java.io.DataInputStream.readUnsignedShort(DataInputStream.java) at java.io.DataInputStream.readUTF(DataInputStream.java) 
> at org.apache.harmony.jpda.tests.share.JPDADebuggeeSynchronizer.receiveMessage(JPDADebuggeeSynchronizer.java:126) 
> at org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest.testStop001(StopTest.java:101) 
> ... 13 more
> The problem is that JVMTI function StopThread() does not throw specified exception in a waiting thread, until waiting timeout is expired.
> To reproduce this failure:
> 1. create Harmony JDK with federated build:
>     svn checkout https://svn.apache.org/repos/asf/harmony/enhanced/trunk
>     cd trunk
>     ant
> 2. goto jdktools directory, add junit to classpath, and run particular test:
>     cd working_jdktools
>     export CLASSPATH=<...>/trunk/common_resources/depends/jars/junit_3.8.2/junit.jar
>     ant test -Dbuild.module=jpda -Dtest.case=org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest
> 3. see results in <...>/trunk/working_jdktools/build/test_report/html/index.html
> It is possible also to run test directly from command line:
>    cd working_jdktools
>    deploy/jdk/bin/java -classpath ../common_resources/depends/jars/junit_3.8.2/junit.jar:build/tests/classes \
>    org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Resolved: (HARMONY-3341) [drlvm][jvmti] StopThread() does not interrupt thread in Object.wait(timeout) until timeout expired

Posted by "Gregory Shimansky (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-3341?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Gregory Shimansky resolved HARMONY-3341.
----------------------------------------

    Resolution: Fixed

Patch is applied at 563554. Regression test works for me but I excluded it for x86_64 architectures. The test org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest is now removed from exclude list of jpda tests because it passes, the change is committed at 563605.

> [drlvm][jvmti] StopThread() does not interrupt thread in Object.wait(timeout) until timeout expired
> ---------------------------------------------------------------------------------------------------
>
>                 Key: HARMONY-3341
>                 URL: https://issues.apache.org/jira/browse/HARMONY-3341
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM, JDK
>         Environment: Windows/ia32, Linux/ia32, Harmony-jdk-r522770
>            Reporter: Ivan Popov
>            Assignee: Gregory Shimansky
>         Attachments: H3341-Added-interruption-of-stopped-thread.patch, H3341-Regression-test.patch
>
>
> The following JDWP unit test
>   org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest
> fails on both Windows and Linux platforms with the same diagnostics:
> testStop001: get threadID to Stop...
> testStop001: ID of the tested thread to Stop = 1320
> STDOUT> [SYNC] Message sent: ready
> testStop001: get throwable for Stop command...
> testStop001: throwable = ObjectID: 2040
> testStop001: send "Stop" command
> testStop001: wait for Debuggee message about test status...
> [SYNC] Waiting...
> STDOUT> TestedThread: Exception is caught: java.lang.NullPointerException
> STDOUT> TestedThread: PASSED: It is expected Exception
> <...>
> org.apache.harmony.jpda.tests.framework.TestErrorException: java.net.SocketTimeoutException: The operation timed out 
> at org.apache.harmony.jpda.tests.share.JPDADebuggeeSynchronizer.receiveMessage (JPDADebuggeeSynchronizer.java:132) 
> at org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest.testStop001(StopTest.java:101) 
> at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
> Caused by: java.net.SocketTimeoutException: The operation timed out at org.apache.harmony.luni.net.PlainSocketImpl.read(PlainSocketImpl.java:544) 
> at org.apache.harmony.luni.net.SocketInputStream.read(SocketInputStream.java:60) 
> at java.io.DataInputStream.readUnsignedShort(DataInputStream.java) at java.io.DataInputStream.readUTF(DataInputStream.java) 
> at org.apache.harmony.jpda.tests.share.JPDADebuggeeSynchronizer.receiveMessage(JPDADebuggeeSynchronizer.java:126) 
> at org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest.testStop001(StopTest.java:101) 
> ... 13 more
> The problem is that JVMTI function StopThread() does not throw specified exception in a waiting thread, until waiting timeout is expired.
> To reproduce this failure:
> 1. create Harmony JDK with federated build:
>     svn checkout https://svn.apache.org/repos/asf/harmony/enhanced/trunk
>     cd trunk
>     ant
> 2. goto jdktools directory, add junit to classpath, and run particular test:
>     cd working_jdktools
>     export CLASSPATH=<...>/trunk/common_resources/depends/jars/junit_3.8.2/junit.jar
>     ant test -Dbuild.module=jpda -Dtest.case=org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest
> 3. see results in <...>/trunk/working_jdktools/build/test_report/html/index.html
> It is possible also to run test directly from command line:
>    cd working_jdktools
>    deploy/jdk/bin/java -classpath ../common_resources/depends/jars/junit_3.8.2/junit.jar:build/tests/classes \
>    org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (HARMONY-3341) [drlvm][jvmti] StopThread() does not interrupt thread in Object.wait(timeout) until timeout expired

Posted by "Ivan Popov (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-3341?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ivan Popov updated HARMONY-3341:
--------------------------------

    Environment: Windows/ia32, Linux/ia32, Harmony-jdk-r522770  (was: Windows/ia32, Linux/ia32, Harmony-jdk-r515478)
        Summary: [drlvm][jvmti] StopThread() does not interrupt thread in Object.wait(timeout) until timeout expired  (was: [jdktools][jpda] JDWP test org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest fails with "operation timed out")

I'm still able to reproduce this failure with Harmony-jdk-r522770.

Indeed, the problem is in JVMTI function StopThread(). It does not interrupt thread waiting in Object.wait(timeout) until timeout is expired. Only after timeout is expired and thread returned from Object.wait(), then exception specified in StopThread() is thrown.

Since this is JVMTI problem, I'm changing subject and linking this issue to DRLVM component.

Please note, that sometime test may pass. This is because the timeout used in Object.wait() and default time used in test for checking thread interruption are equal (1 minute). This leads that exception is sometime thrown after waiting timeout expired, but before test checks for interruption. To make this failure stable, specify test timeout less than 1 minute (e.g., 10 seconds = 10000 milliseconds):

   deploy/jdk/bin/java -classpath ../common_resources/depends/jars/junit_3.8.2/junit.jar:build/tests/classes \
  -Djpda.settings.timeout=10000 \
   org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest 


> [drlvm][jvmti] StopThread() does not interrupt thread in Object.wait(timeout) until timeout expired
> ---------------------------------------------------------------------------------------------------
>
>                 Key: HARMONY-3341
>                 URL: https://issues.apache.org/jira/browse/HARMONY-3341
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM, JDK
>         Environment: Windows/ia32, Linux/ia32, Harmony-jdk-r522770
>            Reporter: Ivan Popov
>
> The following JDWP unit test
>   org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest
> fails on both Windows and Linux platforms with the same diagnostics:
> testStop001: get threadID to Stop...
> testStop001: ID of the tested thread to Stop = 1320
> STDOUT> [SYNC] Message sent: ready
> testStop001: get throwable for Stop command...
> testStop001: throwable = ObjectID: 2040
> testStop001: send "Stop" command
> testStop001: wait for Debuggee message about test status...
> [SYNC] Waiting...
> STDOUT> TestedThread: Exception is caught: java.lang.NullPointerException
> STDOUT> TestedThread: PASSED: It is expected Exception
> <...>
> org.apache.harmony.jpda.tests.framework.TestErrorException: java.net.SocketTimeoutException: The operation timed out 
> at org.apache.harmony.jpda.tests.share.JPDADebuggeeSynchronizer.receiveMessage (JPDADebuggeeSynchronizer.java:132) 
> at org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest.testStop001(StopTest.java:101) 
> at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
> Caused by: java.net.SocketTimeoutException: The operation timed out at org.apache.harmony.luni.net.PlainSocketImpl.read(PlainSocketImpl.java:544) 
> at org.apache.harmony.luni.net.SocketInputStream.read(SocketInputStream.java:60) 
> at java.io.DataInputStream.readUnsignedShort(DataInputStream.java) at java.io.DataInputStream.readUTF(DataInputStream.java) 
> at org.apache.harmony.jpda.tests.share.JPDADebuggeeSynchronizer.receiveMessage(JPDADebuggeeSynchronizer.java:126) 
> at org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest.testStop001(StopTest.java:101) 
> ... 13 more
> The problem is that JVMTI function StopThread() does not throw specified exception in a waiting thread, until waiting timeout is expired.
> To reproduce this failure:
> 1. create Harmony JDK with federated build:
>     svn checkout https://svn.apache.org/repos/asf/harmony/enhanced/trunk
>     cd trunk
>     ant
> 2. goto jdktools directory, add junit to classpath, and run particular test:
>     cd working_jdktools
>     export CLASSPATH=<...>/trunk/common_resources/depends/jars/junit_3.8.2/junit.jar
>     ant test -Dbuild.module=jpda -Dtest.case=org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest
> 3. see results in <...>/trunk/working_jdktools/build/test_report/html/index.html
> It is possible also to run test directly from command line:
>    cd working_jdktools
>    deploy/jdk/bin/java -classpath ../common_resources/depends/jars/junit_3.8.2/junit.jar:build/tests/classes \
>    org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Closed: (HARMONY-3341) [drlvm][jvmti] StopThread() does not interrupt thread in Object.wait(timeout) until timeout expired

Posted by "Gregory Shimansky (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-3341?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Gregory Shimansky closed HARMONY-3341.
--------------------------------------


No response, assuming ok.

> [drlvm][jvmti] StopThread() does not interrupt thread in Object.wait(timeout) until timeout expired
> ---------------------------------------------------------------------------------------------------
>
>                 Key: HARMONY-3341
>                 URL: https://issues.apache.org/jira/browse/HARMONY-3341
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM, JDK
>         Environment: Windows/ia32, Linux/ia32, Harmony-jdk-r522770
>            Reporter: Ivan Popov
>            Assignee: Gregory Shimansky
>         Attachments: H3341-Added-interruption-of-stopped-thread.patch, H3341-Regression-test.patch
>
>
> The following JDWP unit test
>   org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest
> fails on both Windows and Linux platforms with the same diagnostics:
> testStop001: get threadID to Stop...
> testStop001: ID of the tested thread to Stop = 1320
> STDOUT> [SYNC] Message sent: ready
> testStop001: get throwable for Stop command...
> testStop001: throwable = ObjectID: 2040
> testStop001: send "Stop" command
> testStop001: wait for Debuggee message about test status...
> [SYNC] Waiting...
> STDOUT> TestedThread: Exception is caught: java.lang.NullPointerException
> STDOUT> TestedThread: PASSED: It is expected Exception
> <...>
> org.apache.harmony.jpda.tests.framework.TestErrorException: java.net.SocketTimeoutException: The operation timed out 
> at org.apache.harmony.jpda.tests.share.JPDADebuggeeSynchronizer.receiveMessage (JPDADebuggeeSynchronizer.java:132) 
> at org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest.testStop001(StopTest.java:101) 
> at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
> Caused by: java.net.SocketTimeoutException: The operation timed out at org.apache.harmony.luni.net.PlainSocketImpl.read(PlainSocketImpl.java:544) 
> at org.apache.harmony.luni.net.SocketInputStream.read(SocketInputStream.java:60) 
> at java.io.DataInputStream.readUnsignedShort(DataInputStream.java) at java.io.DataInputStream.readUTF(DataInputStream.java) 
> at org.apache.harmony.jpda.tests.share.JPDADebuggeeSynchronizer.receiveMessage(JPDADebuggeeSynchronizer.java:126) 
> at org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest.testStop001(StopTest.java:101) 
> ... 13 more
> The problem is that JVMTI function StopThread() does not throw specified exception in a waiting thread, until waiting timeout is expired.
> To reproduce this failure:
> 1. create Harmony JDK with federated build:
>     svn checkout https://svn.apache.org/repos/asf/harmony/enhanced/trunk
>     cd trunk
>     ant
> 2. goto jdktools directory, add junit to classpath, and run particular test:
>     cd working_jdktools
>     export CLASSPATH=<...>/trunk/common_resources/depends/jars/junit_3.8.2/junit.jar
>     ant test -Dbuild.module=jpda -Dtest.case=org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest
> 3. see results in <...>/trunk/working_jdktools/build/test_report/html/index.html
> It is possible also to run test directly from command line:
>    cd working_jdktools
>    deploy/jdk/bin/java -classpath ../common_resources/depends/jars/junit_3.8.2/junit.jar:build/tests/classes \
>    org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (HARMONY-3341) [drlvm][jvmti] StopThread() does not interrupt thread in Object.wait(timeout) until timeout expired

Posted by "Ivan Popov (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-3341?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ivan Popov updated HARMONY-3341:
--------------------------------

    Component/s: DRLVM

> [drlvm][jvmti] StopThread() does not interrupt thread in Object.wait(timeout) until timeout expired
> ---------------------------------------------------------------------------------------------------
>
>                 Key: HARMONY-3341
>                 URL: https://issues.apache.org/jira/browse/HARMONY-3341
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM, JDK
>         Environment: Windows/ia32, Linux/ia32, Harmony-jdk-r522770
>            Reporter: Ivan Popov
>
> The following JDWP unit test
>   org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest
> fails on both Windows and Linux platforms with the same diagnostics:
> testStop001: get threadID to Stop...
> testStop001: ID of the tested thread to Stop = 1320
> STDOUT> [SYNC] Message sent: ready
> testStop001: get throwable for Stop command...
> testStop001: throwable = ObjectID: 2040
> testStop001: send "Stop" command
> testStop001: wait for Debuggee message about test status...
> [SYNC] Waiting...
> STDOUT> TestedThread: Exception is caught: java.lang.NullPointerException
> STDOUT> TestedThread: PASSED: It is expected Exception
> <...>
> org.apache.harmony.jpda.tests.framework.TestErrorException: java.net.SocketTimeoutException: The operation timed out 
> at org.apache.harmony.jpda.tests.share.JPDADebuggeeSynchronizer.receiveMessage (JPDADebuggeeSynchronizer.java:132) 
> at org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest.testStop001(StopTest.java:101) 
> at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
> Caused by: java.net.SocketTimeoutException: The operation timed out at org.apache.harmony.luni.net.PlainSocketImpl.read(PlainSocketImpl.java:544) 
> at org.apache.harmony.luni.net.SocketInputStream.read(SocketInputStream.java:60) 
> at java.io.DataInputStream.readUnsignedShort(DataInputStream.java) at java.io.DataInputStream.readUTF(DataInputStream.java) 
> at org.apache.harmony.jpda.tests.share.JPDADebuggeeSynchronizer.receiveMessage(JPDADebuggeeSynchronizer.java:126) 
> at org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest.testStop001(StopTest.java:101) 
> ... 13 more
> The problem is that JVMTI function StopThread() does not throw specified exception in a waiting thread, until waiting timeout is expired.
> To reproduce this failure:
> 1. create Harmony JDK with federated build:
>     svn checkout https://svn.apache.org/repos/asf/harmony/enhanced/trunk
>     cd trunk
>     ant
> 2. goto jdktools directory, add junit to classpath, and run particular test:
>     cd working_jdktools
>     export CLASSPATH=<...>/trunk/common_resources/depends/jars/junit_3.8.2/junit.jar
>     ant test -Dbuild.module=jpda -Dtest.case=org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest
> 3. see results in <...>/trunk/working_jdktools/build/test_report/html/index.html
> It is possible also to run test directly from command line:
>    cd working_jdktools
>    deploy/jdk/bin/java -classpath ../common_resources/depends/jars/junit_3.8.2/junit.jar:build/tests/classes \
>    org.apache.harmony.jpda.tests.jdwp.ThreadReference.StopTest 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.