This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 11727 - Performance - eager initialization of ObjectBrowser during startup
Summary: Performance - eager initialization of ObjectBrowser during startup
Status: VERIFIED FIXED
Alias: None
Product: java
Classification: Unclassified
Component: Unsupported (show other bugs)
Version: 3.x
Hardware: All All
: P2 blocker (vote)
Assignee: issues@java
URL:
Keywords: PERFORMANCE
Depends on:
Blocks:
 
Reported: 2001-04-25 07:34 UTC by anovak
Modified: 2001-12-18 16:05 UTC (History)
1 user (show)

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments
dump from a profiler (40.65 KB, text/html)
2001-04-25 07:36 UTC, anovak
Details
Proposed patch (2.12 KB, patch)
2001-08-22 10:36 UTC, Petr Nejedly
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description anovak 2001-04-25 07:34:11 UTC
ObjectBrowser.<init> invokes initComponent. Which takes about 10% of main thread
during startup - or 5% of startup totaly.
Comment 1 anovak 2001-04-25 07:36:42 UTC
Created attachment 1233 [details]
dump from a profiler
Comment 2 Jan Chalupa 2001-05-06 14:19:44 UTC
Target milestone -> 3.3
Comment 3 support 2001-08-01 17:28:25 UTC
Fixed in main trunk, static init moved to lazy
Comment 4 Petr Suchomel 2001-08-01 17:30:02 UTC
Marked as fixed
Comment 5 Petr Nejedly 2001-08-22 10:35:01 UTC
The fix of #14155 (between ObjectBrowser.java,v1.31 and v1.32)
caused this problem to reappear.
Comment 6 Petr Nejedly 2001-08-22 10:36:55 UTC
Created attachment 2268 [details]
Proposed patch
Comment 7 Petr Nejedly 2001-08-22 10:44:19 UTC
The patch moves the initialization from TC.open() to addNotify()
It seems to work and can be used directly, but generally preffered
solution is to switch the module workspace/mode definition
to XML layer FS, which will postpone TC.open() up to switch
to the Browsing workspace.
The fix of #14115 caused startup time/class#/memory regression
quite visible on the performance graphs, thus increasing priority.
Comment 8 Petr Nejedly 2001-08-23 12:10:36 UTC
Fixed, used a bit different patch - let the original code stay in 
componentActivated and do only the initialization in addNotify().
Comment 9 Petr Nejedly 2001-12-18 16:05:19 UTC
x