United StatesChange Country, Oracle Worldwide Web Sites Communities I am a... I want to...
JDK-6244063 : Performance problems with com.sun.corba.se.impl packages in 5.0

Details
Type:
Bug
Submit Date:
2005-03-22
Status:
Resolved
Updated Date:
2010-04-03
Project Name:
JDK
Resolved Date:
2005-04-19
Component:
other-libs
OS:
solaris_1
Sub-Component:
corba:orb
CPU:
sparc
Priority:
P2
Resolution:
Fixed
Affected Versions:
5.0
Fixed Versions:
5.0u4 (b03)

Related Reports
Backport:
Backport:

Sub Tasks

Description
Noticed very poor 
performance in the method : com.sun.corba.se.impl.protocol.CorbaClientDelegateImpl.hashCode() 
(optimizeit html trace is attached).

Seems this accounts to the poor ORB performance experienced with JDK 1.5 (it is still 10% behind JDK 1.4).
###@###.### 2005-03-22 06:59:56 GMT

                                    

Comments
WORK AROUND


See the following change tried with com.sun.corba.se.impl.ior.IORImpl.java:

D:\tmp>diff IORImpl.original.java IORImpl.modified.java
187a188
 >     private String stringified = null;
189a191
 >       if (stringified == null) {
203,204c205,208
<         return ORBConstants.STRINGIFY_PREFIX + bs;
<
---
 >         stringified = ORBConstants.STRINGIFY_PREFIX + bs;
 >
 >       }
 >       return stringified;

This improved performance greatly.
###@###.### 2005-03-22 06:59:56 GMT
                                     
2005-03-22
EVALUATION

It appears that the CorbaClientDelegateImpl.hashCode method is
calling stringify unnecessarily.  Instead, it should call
the hashCode method defined on the IOR.  This in turn should
cache the hashCode computation.  Other optimizations are possible,
such as caching IORTemplates, but simply caching the hashCode should
fix this problem.
###@###.### 2005-03-24 17:43:53 GMT
                                     
2005-03-24
SUGGESTED FIX


http://jpsesvr.sfbay.sun.com:8080/ctetools/html/ViewDetail.jsp?index=1422
###@###.### 2005-04-12 18:02:42 GMT
                                     
2005-04-12



Hardware and Software, Engineered to Work Together