Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[mdt-papyrus.dev] Big performance issue in edit helper advice related to activity diagram in Oxygen

Hi all,

We have noticed that many edit helper advice related to the activity diagram
have a *very* significant performance issue, due to the heavy use of method org.eclipse.papyrus.uml.tools.utils.ElementUtil.getInstancesFilteredByType.
Clearly, this method does not scale well at all, since it does a deep traversal
of the entire containing package and its dependencies (which can be the whole model).
After a quick code review, it looks like most uses of this method
should be replaced by more adequate use of the the classical cross reference adapter.

This performance issue has deep impact on the overall performance of the tool,
because some advice are registered against very common elements like Property.
For instance, opening the reference dialog to change the type of a property triggers that code,
through the ServiceEditFilteredContentProvider, which will issue SetRequests for the property's type.

Regards,
--
Alain Le Guennec, R&D Expert Engineer
SCADE Architect Project Manager and Team Leader
Esterel Technologies, a wholly-owned subsidiary of ANSYS, Inc.
Tel: +33 5 34 60 90 55
----------------------------------------------------------------------------------------------------------------------------
The information transmitted is intended only for the person or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of, or taking of any action in reliance upon, this information by persons or entities other than the intended recipient is prohibited. If you received this in error, please contact the sender and delete the material from any computer. 

Back to the top