JDK-4854296 : JNI ids must be reimplemented to support JVMTI obsolete ids, increase efficiency
  • Type: Enhancement
  • Component: hotspot
  • Sub-Component: runtime
  • Affected Version: 5.0
  • Priority: P2
  • Status: Closed
  • Resolution: Fixed
  • OS: generic
  • CPU: generic
  • Submitted: 2003-04-25
  • Updated: 2012-10-13
  • Resolved: 2003-12-02
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.
Other
5.0 betaFixed
Related Reports
Relates :  
Relates :  
Relates :  
Description
The current implementation of JNI ids (jmethodID and jfieldID) is

	* very inefficient - particularly in returning jmethodID from methodOop,
	  which involves multiple sequential searchs
	* kludgy - separate implementations for methods, instance fields, and
	  static fields - none encapsulated
	* does not support obsolete methods (methods which have been 
	  non equivalently redefined with JVMTI RedefineClasses)

The first and last problem require this to be fixed in Tiger as part of the
JVMTI implementation.

The new implementation replaces an algorithm which is linear in the number
of methods and in the number of ids in the class with one that constant 
time.  It supports true obsolete methods and has a single encapsulated 
implementation.

###@###.### 2003-04-25

Comments
CONVERTED DATA BugTraq+ Release Management Values COMMIT TO FIX: tiger FIXED IN: tiger-beta INTEGRATED IN: tiger-beta
14-06-2004

EVALUATION Required for JVMTI (#4639363)
11-06-2004

PUBLIC COMMENTS Faster cleaner implementation of JNI jmethodID and jfieldID needed for JVMTI (JSR-163)
10-06-2004