Bug 187368 - Improve performance of EARVirtualComponent.getHardReferences()
Summary: Improve performance of EARVirtualComponent.getHardReferences()
Status: NEW
Alias: None
Product: WTP Java EE Tools
Classification: WebTools
Component: jst.j2ee (show other bugs)
Version: 2.0   Edit
Hardware: PC Windows 2000
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Carl Anderson CLA
QA Contact: Chuck Bridgham CLA
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-05-16 15:39 EDT by Seng Phung Lu CLA
Modified: 2007-05-16 16:13 EDT (History)
0 users

See Also:


Attachments
shows profiling data while building a large workspace (168.37 KB, image/jpeg)
2007-05-16 15:40 EDT, Seng Phung Lu CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Seng Phung Lu CLA 2007-05-16 15:39:01 EDT
Build ID: I200705111421

Steps To Reproduce:
While building a large workspace, I profiled org.eclipse.jst.j2ee.componentcore.util.EARVirtualComponent.getHardReferences() being called over 1,200 times (Note: this snapshot was taken at only 5% workspace build completion).  Within this method, checking a project's type is called 84,000 times. 

ie. J2EEProjectUtilities.isDynamicWebProject, J2EEProjectUtilities.isStaticWebProject, J2EEProjectUtilities.isJCAProject, J2EEProjectUtilities.isUtilityProject

Using the above methods does not scale well in this case.  Pls consider caching and/or improving the utility method's response time.



More information:
I have attached an img showing the call stack as well as the time and invocation counts for each method.
Comment 1 Seng Phung Lu CLA 2007-05-16 15:40:52 EDT
Created attachment 67498 [details]
shows profiling data while building a large workspace