| Summary: | [perf] open a session 1 million causes performance issue due to rep split | ||||||
|---|---|---|---|---|---|---|---|
| Product: | [Modeling] Sirius | Reporter: | Laurent Fasani <laurent.fasani> | ||||
| Component: | Core | Assignee: | Project inbox <sirius.core-inbox> | ||||
| Status: | CLOSED WONTFIX | QA Contact: | |||||
| Severity: | normal | ||||||
| Priority: | P3 | CC: | julien.dupont | ||||
| Version: | 5.1.0 | Keywords: | triaged | ||||
| Target Milestone: | 6.0.0 | ||||||
| Hardware: | PC | ||||||
| OS: | Windows 10 | ||||||
| Whiteboard: | |||||||
| Attachments: |
|
||||||
I am not convinced that fixing that bug has a great interest for the following reasons: - it occurs during the migration and will not occur the following open if it has been saved - we have rarely as many representations in the aird - the fix would need some cache of loaded representation that would need to be updated. It does not in the direction of more robustness Available in Sirius 6.0.0, see https://wiki.eclipse.org/Sirius/6.0.0 for details |
Created attachment 272288 [details] session 1 Million project Steps to reproduce: * import the attached project * measure the time to open it -> KO. the time to open the session is about 300s whereas the expected time is about 67s time is spent in DViewQuery.getLoadedRepresentations which calls org.eclipse.sirius.business.internal.representation.DRepresentationDescriptorToDRepresentationLinkManager.getRepresentationInternal(boolean) The issue comes from the fact that * It iterates on the direct content of the aird resource and there are 10700 representations * It is called a huge number of times due to the participant to execute Once loaded, and saved (do any little change), the loading time is the expected 67s.