-
Bug
-
Resolution: Fixed
-
P4
-
1.4.0, 1.4.1, 1.4.2, 5.0, 7, 7u431, 9
-
b05
-
generic, sparc
-
generic, solaris_9
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8254732 | 8-pool | Manoj Gupta | P4 | Resolved | Fixed |
Name: vpR10197 Date: 10/30/2002
------------------------------------------------------------------------------
Test : nsk/jdi/Scenarios/invokeMethod/popframes001
Test Base : testbase_nsk
VM : ServerVM, ClientVM
Mode : comp, int, mixed
Platform (s) : solx86, linux, solsparc, win
OS : 5.8, RH7.2, NT/2000
JDK : 1.4.2-b03, hopper-rc, merlin-rc
------------------------------------------------------------------------------
Debuggee's part of the test contains a tested class (class B) and
debugger exercises method runIt() of this class by the following steps:
1. On ClassPrepareEvent of class B, MethodExitRequest is created and
debugger waits MethodExitEvent for <clinit> to be shure the static
members of class B have been initialized
2. After getting MethodExitEvent for <clinit>,
- debugger creates MethodEntryRequest
- invokes the tested method (method "runIt") by calling
com.sun.jdi.ClassType.invokeMethod().
This invoking occurs in special thread of debugger's part so that
debugger can process the events of the target VM.
3. When getting MethodEntryEvent from the invoked method (method "runIt"),
debugger tries to pop current frame (with 0 index).
Result of the last step is that debugger hangs.
The test will be available in testbase_nsk.v142r18
Steps to reproduce
==================
1. cd /net/sqesvr.sfbay/export/vsn/GammaBase/Bugs/<BugID>
2. sh doit.sh $JAVA_HOME
TEST BEGINS
===========
event ===>>> VMStartEvent in thread main
resuming...
event ===>>> ClassPrepareEvent in thread main
creating MethodExitRequest for the "nsk.jdi.Scenarios.invokeMethod.popframes001b"
class
resuming...
event ===>>> ###@###.###rames001b:44 in
thread main
MethodExitEvent:: method name : <clinit>
MethodExitEvent:: is it <clinit>: true
MethodExitEvent:: creating MethodEntryRequest for the
"nsk.jdi.Scenarios.invokeMethod.popframes001b" class
invokingMethodThread:: thread created
invokingMethodThread:: invoking method :"runIt"
invokingMethodThread:: -------------------------------
event ===>>> ###@###.###rames001b:51 in
thread main
MethodEntryEvent:: method name: runIt
Active frames:
0. nsk.jdi.Scenarios.invokeMethod.popframes001b:51 method: runIt
1. nsk.jdi.Scenarios.invokeMethod.popframes001b:43 method: <clinit>
2. nsk.jdi.Scenarios.invokeMethod.popframes001a:23 method: main
resetting frame of nsk.jdi.Scenarios.invokeMethod.popframes001b.runIt()
< debugger is hanging >
======================================================================
------------------------------------------------------------------------------
Test : nsk/jdi/Scenarios/invokeMethod/popframes001
Test Base : testbase_nsk
VM : ServerVM, ClientVM
Mode : comp, int, mixed
Platform (s) : solx86, linux, solsparc, win
OS : 5.8, RH7.2, NT/2000
JDK : 1.4.2-b03, hopper-rc, merlin-rc
------------------------------------------------------------------------------
Debuggee's part of the test contains a tested class (class B) and
debugger exercises method runIt() of this class by the following steps:
1. On ClassPrepareEvent of class B, MethodExitRequest is created and
debugger waits MethodExitEvent for <clinit> to be shure the static
members of class B have been initialized
2. After getting MethodExitEvent for <clinit>,
- debugger creates MethodEntryRequest
- invokes the tested method (method "runIt") by calling
com.sun.jdi.ClassType.invokeMethod().
This invoking occurs in special thread of debugger's part so that
debugger can process the events of the target VM.
3. When getting MethodEntryEvent from the invoked method (method "runIt"),
debugger tries to pop current frame (with 0 index).
Result of the last step is that debugger hangs.
The test will be available in testbase_nsk.v142r18
Steps to reproduce
==================
1. cd /net/sqesvr.sfbay/export/vsn/GammaBase/Bugs/<BugID>
2. sh doit.sh $JAVA_HOME
TEST BEGINS
===========
event ===>>> VMStartEvent in thread main
resuming...
event ===>>> ClassPrepareEvent in thread main
creating MethodExitRequest for the "nsk.jdi.Scenarios.invokeMethod.popframes001b"
class
resuming...
event ===>>> ###@###.###rames001b:44 in
thread main
MethodExitEvent:: method name : <clinit>
MethodExitEvent:: is it <clinit>: true
MethodExitEvent:: creating MethodEntryRequest for the
"nsk.jdi.Scenarios.invokeMethod.popframes001b" class
invokingMethodThread:: thread created
invokingMethodThread:: invoking method :"runIt"
invokingMethodThread:: -------------------------------
event ===>>> ###@###.###rames001b:51 in
thread main
MethodEntryEvent:: method name: runIt
Active frames:
0. nsk.jdi.Scenarios.invokeMethod.popframes001b:51 method: runIt
1. nsk.jdi.Scenarios.invokeMethod.popframes001b:43 method: <clinit>
2. nsk.jdi.Scenarios.invokeMethod.popframes001a:23 method: main
resetting frame of nsk.jdi.Scenarios.invokeMethod.popframes001b.runIt()
< debugger is hanging >
======================================================================
- backported by
-
JDK-8254732 JDWP: ThreadReference.popFrame() hangs trying to pop a frame of invoked method
- Resolved
- relates to
-
JDK-6417053 InternalException: Unexpected JDWP Error: 32 when popping frames
- Closed