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.
Consider the situation when Netbeans/CND opend project at startup (just because it was opened last time user exited IDE). If the project is large (2000+ files), the startup is slowed down dramatically. Some messages in console shows that code model is parsing files. On my laptop startup took more than a minute in this case.
Experiments shows that this occurs when ClassView is open. When ClassView is closed, startup time is at least 10 times less.
The reason of the problem is that ClassView calls CsmProject.isStable() in AWT thread; CsmProject.isStable() in turn called synchronized implementation of ProjectImpl.hasChangedFiles(). The solution is: 1) process even inital class view nodes in a separate thread 2) make hasChangedFiles() not synchronize method; use a separate object for synchronization instead (now both hasChangedFiles() and ensureFilesCreated() are synchronized and the latter takes a lot of time on large projects)
Fixed: Checking in ClassView.java; /shared/data/ccvs/repository/cnd/classview/src/org/netbeans/modules/cnd/classview/ClassView.java,v <-- ClassView.java new revision: 1.2.2.7; previous revision: 1.2.2.6 done Checking in ProjectBase.java; /shared/data/ccvs/repository/cnd/modelimpl/src/org/netbeans/modules/cnd/modelimpl/csm/core/ProjectBase.java,v <-- ProjectBase.java new revision: 1.2.2.21; previous revision: 1.2.2.20 done Checking in ProjectImpl.java; /shared/data/ccvs/repository/cnd/modelimpl/src/org/netbeans/modules/cnd/modelimpl/csm/core/ProjectImpl.java,v <-- ProjectImpl.java new revision: 1.2.2.11; previous revision: 1.2.2.10 done
*** Issue 88143 has been marked as a duplicate of this issue. ***
Verified