Community
Participate
Working Groups
The following functions: AbstractEditPart::refreshChildren(), AbstractGraphicalEditPart::refreshSourceConnections() AbstractGraphicalEditPart::refreshTargetConnections() could check for the lists they try to manipulate if they are empty or not and exit immediately without incurring the unnecessary overhead of executing their method bodies
This is an issue raised during performance testing.
FYI - Raj (don't make me spell his whole name) has already submitted this bug and the patch to address the problem. OT - clients should not be calling the refreshX() methods for simple model changes. Instead, addChild(...), removeChild(...) etc. should be called directly.
Added a dependency to bug 162316, reported by Raj, which is not a full duplicate but addresses the refreshSourceConnections() and refreshTargetConnections() performance and memory issues.
With the changes performed in bug #162316 (while this bug targeted the memory consumption of the respective methods), I think most that is achievable has been done. I am thus closing this one as being fixed as well. If you have any concrete points where you think the current implementation (cvs HEAD) will have to be additionally tuned, please reopen and comment.