JDK-6326076 : SA-JDI: ThreadReference.frameCount throws AssertionFailure: must be a valid non-zero index
  • Type: Bug
  • Component: core-svc
  • Sub-Component: tools
  • Affected Version: 6
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • OS: solaris
  • CPU: generic
  • Submitted: 2005-09-20
  • Updated: 2012-02-01
  • Resolved: 2005-10-06
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 6
6 b55Fixed
Related Reports
Relates :  
Description
Nighly tests for ThreadReference.frameCount() fail with the following exception stack trace:

## ERROR: ThreadReference.frameCount() throws unexpected exception:
## ERROR:    thread nom:   0
## ERROR:    thread name:  threadRunning
## ERROR:    exception:    sun.jvm.hotspot.utilities.AssertionFailure: must be a valid non-zero index
#    thread #1
#      thread name:  threadEntering
#      isSuspended:  true
#sun.jvm.hotspot.utilities.AssertionFailure: must be a valid non-zero index
#	at sun.jvm.hotspot.utilities.Assert.that(Assert.java:15)
#	at sun.jvm.hotspot.code.CodeBlob.getOopAt(CodeBlob.java:150)
#	at sun.jvm.hotspot.code.DebugInfoReadStream.readOopHandle(DebugInfoReadStream.java:21)
#	at sun.jvm.hotspot.code.ScopeDesc.<init>(ScopeDesc.java:40)
#	at sun.jvm.hotspot.code.NMethod.getScopeDescNearDbg(NMethod.java:275)
#	at sun.jvm.hotspot.runtime.VFrame.newVFrame(VFrame.java:56)
#	at sun.jvm.hotspot.runtime.VFrame.sender(VFrame.java:112)
#	at sun.jvm.hotspot.runtime.VFrame.javaSender(VFrame.java:134)
#	at sun.jvm.hotspot.runtime.JavaThread.getLastJavaVFrameDbg(JavaThread.java:217)
#	at sun.jvm.hotspot.jdi.ThreadReferenceImpl.privateFrames(ThreadReferenceImpl.java:197)
#	at sun.jvm.hotspot.jdi.ThreadReferenceImpl.frameCount(ThreadReferenceImpl.java:162)
#	at nsk.sajdi.ThreadReference.frames_ii.frames_ii002.checkThread(frames_ii002.java:201)
#	at nsk.sajdi.ThreadReference.frames_ii.frames_ii002.runIt(frames_ii002.java:147)
#	at nsk.sajdi.ThreadReference.frames_ii.frames_ii002.run(frames_ii002.java:26)
#	at nsk.sajdi.ThreadReference.frames_ii.frames_ii002.main(frames_ii002.java:21)
This bug affects the following NSK tests:

    nsk/sajdi/ThreadReference/frame/frame002
    nsk/sajdi/ThreadReference/frames/frames002
    nsk/sajdi/ThreadReference/frames_ii/frames_ii002
    nsk/sajdi/StackFrame/getValues/getvalues001
    nsk/sajdi/StackFrame/thisObject/thisobj001
    nsk/sajdi/StackFrame/visibleVariables/visibvars001
    nsk/sajdi/VMCannotBeModifiedException/thrown/thrown003

Comments
SUGGESTED FIX Webrev: http://bongo.india.sun.com/debugging/sa/6326076/webrev/ Also, refer to attachment "webrev.tar".
23-09-2005

EVALUATION Debug info compression has been changed. SA code should reflect the same.
20-09-2005