Bug 155602 - [Performance]ProjectFacetsManager.check doesn't scale when more facets exist
Summary: [Performance]ProjectFacetsManager.check doesn't scale when more facets exist
Status: CLOSED INVALID
Alias: None
Product: WTP Common Tools
Classification: WebTools
Component: wst.common (show other bugs)
Version: 1.5   Edit
Hardware: PC Windows 2000
: P3 major (vote)
Target Milestone: ---   Edit
Assignee: Konstantin Komissarchik CLA
QA Contact: Konstantin Komissarchik CLA
URL:
Whiteboard:
Keywords: performance
Depends on:
Blocks:
 
Reported: 2006-08-29 16:48 EDT by Seng Phung Lu CLA
Modified: 2006-09-26 10:10 EDT (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Seng Phung Lu CLA 2006-08-29 16:48:07 EDT
I was profiling the cold start up of the Web services wizard which makes a call to ProjectFacetsManager.check(). 

In WTP, this takes only 680ms.  However, as a platform extender, in our larger application where there are over 15 facets, the same method call takes over 140,000ms.  Can this time be improved?
Comment 1 Konstantin Komissarchik CLA 2006-08-30 17:01:24 EDT
If you are seeing this issue only on cold start, then you are not seeing the cost of running the check() method. You are seeing the cost of activating the plugins that define you various product facets. If those plugins are not carefully written, they can ripple activation across your entire product.
Comment 2 David Williams CLA 2006-09-07 09:30:31 EDT
performance bugs should use performance keyword (not [performance] in subject). 
Comment 3 Jeffrey Liu CLA 2006-09-07 11:29:04 EDT
Seng, as discussed, can you create a JUnit test case to determine if this is only a cold start up issue? Thanks.
Comment 4 Seng Phung Lu CLA 2006-09-12 10:38:00 EDT
Only a handful of needed plugins were activated for the task at hand; none of which extend facets. Could simply loading the extensions from the various plugins the very first time take this long?

I wrote a JUnit test to repeatedly call the check() method and verified the performance hit happens the first time only.  

Comment 5 John Lanuti CLA 2006-09-26 10:10:18 EDT
Closing.