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.
Summary: | 35s in 200 calls to I/O via project.ui.groups.DirectoryGroup | ||
---|---|---|---|
Product: | projects | Reporter: | Alexander Simon <alexvsimon> |
Component: | Generic Infrastructure | Assignee: | Milos Kleint <mkleint> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | hmichel, javydreamercsw |
Priority: | P3 | Keywords: | PERFORMANCE |
Version: | 7.3 | ||
Hardware: | All | ||
OS: | All | ||
Issue Type: | DEFECT | Exception Reporter: | 158741 |
Attachments: | nps snapshot |
Description
Alexander Simon
2012-12-03 14:26:15 UTC
Created attachment 128781 [details]
nps snapshot
In many report, it is just slow I/O - few calls to disk block for ages. I have no idea what to do with them. But the report http://statistics.netbeans.org/exceptions/exception.do?id=633745 is different. Single call to org.netbeans.modules.project.ui.groups.DirectoryGroup.findProjects() 99.89654 25 783 ms (99,9%) 25 781 ms 1 yields 200 hundred calls to org.netbeans.modules.project.ui.groups.DirectoryGroup.processFolderChildren() 83.29606 21 499 ms (83,3%) 21 499 ms 200 that is indeed something that can be and should be moved outside of EDT. Two hundred queries to disk just can't be fast. https://hg.netbeans.org/core-main/rev/7d541e5fff16 set main project action executes now in RP, including the prop change events fired and reacted upon in DirectoryGroup. Additionally since some group related methods are expensive (directory group iterating it's projects), I've added asserts on the usage, possible revealing other troubling spots. Integrated into 'main-golden', will be available in build *201212060001* on http://bits.netbeans.org/dev/nightly/ (upload may still be in progress) Changeset: http://hg.netbeans.org/main-golden/rev/7d541e5fff16 User: Milos Kleint <mkleint@netbeans.org> Log: #223180 setting of main project to be performed outside of AWT (primarily because prop change event is fired and processed) Integrated into 'main-golden', will be available in build *201212080001* on http://bits.netbeans.org/dev/nightly/ (upload may still be in progress) Changeset: http://hg.netbeans.org/main-golden/rev/4d0883ce8a42 User: Milos Kleint <mkleint@netbeans.org> Log: #223180 reacting to changes is to be done in awt (reconstruction of submenu) |