==> nsk/jdi/ThreadReference/frameCount/framecount001 TESTING BEGINS
[6:50:30.812] debugee.stderr> **> mainThread: waiting for an instruction from the debugger ...
[6:50:30.815] debugee.stderr> **> mainThread: thread2 is created
[6:50:30.815] debugee.stderr> **> mainThread: synchronized (waitnotifyObj) { enter
[6:50:30.815] debugee.stderr> **> mainThread: before: test_thread.start()
[6:50:30.816] debugee.stderr> **> thread2: method 'run' enter
[6:50:30.816] debugee.stderr> **> mainThread: before: waitnotifyObj.wait();
[6:50:30.817] debugee.stderr> **> thread2: entered into block: synchronized (waitnotifyObj)
[6:50:30.818] debugee.stderr> **> thread2: exited from block: synchronized (waitnotifyObj)
[6:50:30.820]
==> nsk/jdi/ThreadReference/frameCount/framecount001 new checkready: #0
[6:50:30.820] --> debugger: getting ThreadReference objects and setting up breakponts
[6:50:30.820] debugee.stderr> **> mainThread: after: waitnotifyObj.wait();
[6:50:30.824] --> debugger: setting up breakpoints
[6:50:30.824] --> debugger: setting up a breakpoint: method: 'runt1' line: breakpointLineNumber1
[6:50:30.829] --> debugger: a breakpoint has been set up
[6:50:30.829] --> debugger: setting up a breakpoint: method: 'runt2' line: breakpointLineNumber2
[6:50:30.830] --> debugger: a breakpoint has been set up
[6:50:30.830] --> debugger: setting up a breakpoint: method: 'runt1' line: breakpointLineNumber3
[6:50:30.830] --> debugger: a breakpoint has been set up
[6:50:30.830] --> debugger: the check that 'thread2.frameCount()' does throw IncompatibleThreadStateException
[6:50:30.830] --> debugger: when the thread2 is not suspended
[6:50:30.831] --> debugger: : IncompatibleThreadStateException ;
[6:50:30.831] --> debugger: suspending the thread2
[6:50:30.831] --> debugger: the check that 'thread2.frameCount()' doesn't throw exception
[6:50:30.832] --> debugger: when the thread2 is suspended
[6:50:30.832] --> debugger: : no exception
[6:50:30.832] --> debugger: resuming the thread2
[6:50:30.832] --> debugger: enabling breakpRequest1
[6:50:30.833] --> debugger: forcing the main thread to leave synchronized block
[6:50:30.834] --> debugger: testing the thread2 at breakpoints
[6:50:30.834] --> debugger: : new check case i3# = 0
[6:50:30.834] --> debugger: getting BreakpointEvent
[6:50:30.834] --> debugger: waiting for BreakpointEvent
[6:50:30.834] --> debugger: new: eventSet = eventQueue.remove();
[6:50:30.834] debugee.stderr> **> mainThread: mainThread is out of: synchronized (lockingObject) {
[6:50:30.834] debugee.stderr> **> mainThread: waiting for an instruction from the debugger ...
[6:50:30.835] debugee.stderr> **> thread2: entered into block: synchronized (lockingObject)
[6:50:30.835] debugee.stderr> **> thread2: exited from block: synchronized (lockingObject)
[6:50:30.835] debugee.stderr> **> thread2: call to the method 'runt1'
[6:50:30.835] debugee.stderr> **> thread2: method 'runt1' enter
[6:50:30.836] --> debugger: : eventSet != null; size == 1
[6:50:30.836] --> debugger: BreakpointEvent removed
[6:50:30.836] --> debugger: : eventSet == null: EventQueue is empty
[6:50:30.836] --> debugger: thread2 is at breakpoint
[6:50:30.837] --> debugger: : thread2.isSuspended()
[6:50:30.837] --> debugger: getting a value of current frameCount
[6:50:30.837] --> debugger: the thread2 is at first breakpoint in 'runt1'
[6:50:30.838] --> debugger: checking up that frameCount has been incremented
[6:50:31.59] # ERROR: ##> debugger: ERROR: case 0: frameCount1 != (frameCount + 1) : 7
The following stacktrace is for failure analysis.
nsk.share.TestFailure: ##> debugger: ERROR: case 0: frameCount1 != (frameCount + 1) : 7
at nsk.share.Log.logExceptionForFailureAnalysis(Log.java:309)
at nsk.share.Log.complain(Log.java:280)
at nsk.jdi.ThreadReference.frameCount.framecount001.log3(framecount001.java:109)
at nsk.jdi.ThreadReference.frameCount.framecount001.runThis(framecount001.java:368)
at nsk.jdi.ThreadReference.frameCount.framecount001.run(framecount001.java:95)
at nsk.jdi.ThreadReference.frameCount.framecount001.main(framecount001.java:88)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
at java.base/java.lang.reflect.Method.invoke(Method.java:565)
at com.sun.javatest.regtest.agent.MainActionHelper$AgentVMRunnable.run(MainActionHelper.java:333)
at java.base/java.lang.VirtualThread.run(VirtualThread.java:466)
[6:50:30.812] debugee.stderr> **> mainThread: waiting for an instruction from the debugger ...
[6:50:30.815] debugee.stderr> **> mainThread: thread2 is created
[6:50:30.815] debugee.stderr> **> mainThread: synchronized (waitnotifyObj) { enter
[6:50:30.815] debugee.stderr> **> mainThread: before: test_thread.start()
[6:50:30.816] debugee.stderr> **> thread2: method 'run' enter
[6:50:30.816] debugee.stderr> **> mainThread: before: waitnotifyObj.wait();
[6:50:30.817] debugee.stderr> **> thread2: entered into block: synchronized (waitnotifyObj)
[6:50:30.818] debugee.stderr> **> thread2: exited from block: synchronized (waitnotifyObj)
[6:50:30.820]
==> nsk/jdi/ThreadReference/frameCount/framecount001 new checkready: #0
[6:50:30.820] --> debugger: getting ThreadReference objects and setting up breakponts
[6:50:30.820] debugee.stderr> **> mainThread: after: waitnotifyObj.wait();
[6:50:30.824] --> debugger: setting up breakpoints
[6:50:30.824] --> debugger: setting up a breakpoint: method: 'runt1' line: breakpointLineNumber1
[6:50:30.829] --> debugger: a breakpoint has been set up
[6:50:30.829] --> debugger: setting up a breakpoint: method: 'runt2' line: breakpointLineNumber2
[6:50:30.830] --> debugger: a breakpoint has been set up
[6:50:30.830] --> debugger: setting up a breakpoint: method: 'runt1' line: breakpointLineNumber3
[6:50:30.830] --> debugger: a breakpoint has been set up
[6:50:30.830] --> debugger: the check that 'thread2.frameCount()' does throw IncompatibleThreadStateException
[6:50:30.830] --> debugger: when the thread2 is not suspended
[6:50:30.831] --> debugger: : IncompatibleThreadStateException ;
[6:50:30.831] --> debugger: suspending the thread2
[6:50:30.831] --> debugger: the check that 'thread2.frameCount()' doesn't throw exception
[6:50:30.832] --> debugger: when the thread2 is suspended
[6:50:30.832] --> debugger: : no exception
[6:50:30.832] --> debugger: resuming the thread2
[6:50:30.832] --> debugger: enabling breakpRequest1
[6:50:30.833] --> debugger: forcing the main thread to leave synchronized block
[6:50:30.834] --> debugger: testing the thread2 at breakpoints
[6:50:30.834] --> debugger: : new check case i3# = 0
[6:50:30.834] --> debugger: getting BreakpointEvent
[6:50:30.834] --> debugger: waiting for BreakpointEvent
[6:50:30.834] --> debugger: new: eventSet = eventQueue.remove();
[6:50:30.834] debugee.stderr> **> mainThread: mainThread is out of: synchronized (lockingObject) {
[6:50:30.834] debugee.stderr> **> mainThread: waiting for an instruction from the debugger ...
[6:50:30.835] debugee.stderr> **> thread2: entered into block: synchronized (lockingObject)
[6:50:30.835] debugee.stderr> **> thread2: exited from block: synchronized (lockingObject)
[6:50:30.835] debugee.stderr> **> thread2: call to the method 'runt1'
[6:50:30.835] debugee.stderr> **> thread2: method 'runt1' enter
[6:50:30.836] --> debugger: : eventSet != null; size == 1
[6:50:30.836] --> debugger: BreakpointEvent removed
[6:50:30.836] --> debugger: : eventSet == null: EventQueue is empty
[6:50:30.836] --> debugger: thread2 is at breakpoint
[6:50:30.837] --> debugger: : thread2.isSuspended()
[6:50:30.837] --> debugger: getting a value of current frameCount
[6:50:30.837] --> debugger: the thread2 is at first breakpoint in 'runt1'
[6:50:30.838] --> debugger: checking up that frameCount has been incremented
[6:50:31.59] # ERROR: ##> debugger: ERROR: case 0: frameCount1 != (frameCount + 1) : 7
The following stacktrace is for failure analysis.
nsk.share.TestFailure: ##> debugger: ERROR: case 0: frameCount1 != (frameCount + 1) : 7
at nsk.share.Log.logExceptionForFailureAnalysis(Log.java:309)
at nsk.share.Log.complain(Log.java:280)
at nsk.jdi.ThreadReference.frameCount.framecount001.log3(framecount001.java:109)
at nsk.jdi.ThreadReference.frameCount.framecount001.runThis(framecount001.java:368)
at nsk.jdi.ThreadReference.frameCount.framecount001.run(framecount001.java:95)
at nsk.jdi.ThreadReference.frameCount.framecount001.main(framecount001.java:88)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
at java.base/java.lang.reflect.Method.invoke(Method.java:565)
at com.sun.javatest.regtest.agent.MainActionHelper$AgentVMRunnable.run(MainActionHelper.java:333)
at java.base/java.lang.VirtualThread.run(VirtualThread.java:466)