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 145682 - Automatic badging of projects invalidates lazy project loading
Summary: Automatic badging of projects invalidates lazy project loading
Status: RESOLVED FIXED
Alias: None
Product: projects
Classification: Unclassified
Component: Generic Projects UI (show other bugs)
Version: 6.x
Hardware: All All
: P2 blocker (vote)
Assignee: Jesse Glick
URL:
Keywords: PERFORMANCE, REGRESSION
Depends on:
Blocks: 135399
  Show dependency tree
 
Reported: 2008-08-30 14:53 UTC by Jaroslav Tulach
Modified: 2008-09-06 17:35 UTC (History)
2 users (show)

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments
Stack trace of AWT thread (17.35 KB, text/plain)
2008-08-30 15:04 UTC, Jaroslav Tulach
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Jaroslav Tulach 2008-08-30 14:53:04 UTC
After a bit of investigation what is happening on start, I think I found one of the biggest contributors to recent 
(between 6.1 and 6.5) start slowdown. The commit bellow, changes BadgingNode to query for its Project in lookup. This 
happens in AWT thread during initialization and is highly visible, especially during cold start.

# HG changeset patch
# User Jesse Glick <jglick@netbeans.org>
# Date 1210956601 14400
# Node ID 585ba313709f3542293b144c071add358603506d
# Parent  a9e78cc20869f04f2b76c96e768f1eae21acd1cc
Badge project root nodes acc. to filesystem status automatically.
Do not require every project type to do this individually.
Other nodes which represent collections of files (but are not DataNode's)
may still need special logic for now.
Comment 1 Jaroslav Tulach 2008-08-30 15:03:15 UTC
Maybe you have noticed that after the start the main window is shown, but its content remains grey. This is (together 
with other reasons) caused by this change. The AWT thread is blocked significantly, as following thread dump shows.

Comment 2 Jaroslav Tulach 2008-08-30 15:04:04 UTC
Created attachment 68708 [details]
Stack trace of AWT thread
Comment 3 Jaroslav Tulach 2008-08-30 15:34:06 UTC
There are probably many ways to fix the problem, but I guess one of the most compelling for me is: show sand clocks 
while the node represents lazy node and only when it is fully initialized, switch to regular badge.
Comment 4 Jesse Glick 2008-09-05 14:40:07 UTC
Is there a particular way to tell that the project has been "initialized"?
Comment 5 Jesse Glick 2008-09-05 17:40:06 UTC
Trying to fix. Not sure how to reproduce, and I don't know much about LazyProject, so just guessing.

core-main #0d6f5c004230
Comment 6 Quality Engineering 2008-09-06 17:35:35 UTC
Integrated into 'main-golden', will be available in build *200809061401* on http://bits.netbeans.org/dev/nightly/ (upload may still be in progress)
Changeset: http://hg.netbeans.org/main/rev/0d6f5c004230
User: Jesse Glick <jglick@netbeans.org>
Log: #145682: refine fix of #135399 to account for lazy projects.