Community
Participate
Working Groups
I looked closely into the profiler report and I found these functions -among others- to take so much time, I mean other parts of the code (e.g., NavigatorContentService::findRelevantLableProviders(), or, NavigatorContentService::findDescriptorsWithPossibleChild()), rely on these functions to do their job: VisibilityAssistant::isVisible() NavigatorContentDescriptor::isPossibleChild() NavigatorContentDescriptor.isTriggerPoint() NavigatorContentService::extractDescriptorInstances() NavigatorContentService::extractLabelProviders() Moreover, the code in general rely on using WeakHashMap, which is much slower than normal maps, and on using TreeMaps which is also slower due to sorting and finally using AbstractCollection::AddAll(). Perhaps using these collections is unavoidable, however I just though I should let you know. YL to provide more details.
Yaser, do you have more details on this?
Eric, I just profiled "expand-all" scenario and the functions mentioned in the first comment consume most of the time. I haven't looked at the code of these functions so I'm not really sure what could be done about them.
Yassar -- could you test a patch to determine if we could improve the performance of VisibilityAssistant.isVisible() ?
Is this still going into 3.2.1? We are going to release candiates next week.
I'm apprehensive about releasing any non-specific performance fixes for 3.2.1. I am investigating some possible improvements, but none are stable enough at this point to release for 3.2.1.
Moving to 3.3. See bug 155371 for another potential performance issue with the common navigator.
Removing 3.5 target milestone. We are in the end-game now. Please have a look and decide if this should be targeted at 3.6.
Missed because of bad title, fixing.
The WeakHashMap is no longer used. This performance study is probably out of date due to all of the changes in the last couple of weeks. At some point I will do a performance study; I'm sure there are opportunities. This is not really a bug, btw as far as I'm concerning, making it an enhancement request.
This bug hasn't had any activity in quite some time. Maybe the problem got resolved, was a duplicate of something else, or became less pressing for some reason - or maybe it's still relevant but just hasn't been looked at yet. If you have further information on the current state of the bug, please add it. The information can be, for example, that the problem still occurs, that you still want the feature, that more information is needed, or that the bug is (for whatever reason) no longer relevant.