Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Performance regressions observed with the new checkDuplicates behavior when adding resource in a new folder (perf) #70

Open
mPorhel opened this issue Aug 20, 2024 · 0 comments

Comments

@mPorhel
Copy link
Contributor

mPorhel commented Aug 20, 2024

When moving from CDO 4.7 to CDO 4.22, we have detected a +20% performance degradation.
Scenario in Team for Capella, exporting a project with 330 Sirius diagrams, each diagram being stored in its own CDO resource, child a .representation CDOFolder.

During this initial export to a CDO Repository, the parent folder has not been commited yet.
It seems that we could avoid to checkDuplicates when adding resource(s) in new folder:

  • Do not checkDuplicates for addition of non loaded TRANSIENT resource (just created) in NEW folder (non committed yet)but just invalidate resourcePath cache.
  • Undo/redo of creation/deletion scenario are not impacted: newNode is a loaded resource.

With this approad (PR is coming) we have retrieved previous performance, cancelled the +20% time degradation with 330 diagrams (60 to 84s).

@mPorhel mPorhel changed the title Performance regressions observed with the new checkDuplicates behavior when adding resource in a new folder Performance regressions observed with the new checkDuplicates behavior when adding resource in a new folder (perf) Aug 20, 2024
mPorhel added a commit to mPorhel/cdo that referenced this issue Aug 20, 2024


- Do not checkDuplicates for addition of non loaded TRANSIENT resource
(just created) in NEW folder (non committed yet)but just invalidate
resourcePath cache.
- Undo/redo of creation/deletion scenario are not impacted: newNode is a
loaded resource.

This optimize the export scenario which has a +20% time degradation with
330 diagrams (60 to 84s).

Change-Id: I40e74a4f34de84bfb3ca4570af66610c594a1838
Signed-off-by: Maxime Porhel <maxime.porhel@obeo.fr>
mPorhel added a commit to mPorhel/cdo that referenced this issue Aug 20, 2024
This optimize Team for Capella export scenario which has a +20% time
degradation with a project containing 330 diagrams (60 to 84s).

Change-Id: Id0cbfae548fcd705546a62ba5067415f5c8a4c4d
Signed-off-by: Maxime Porhel <maxime.porhel@obeo.fr>
mPorhel added a commit to mPorhel/cdo that referenced this issue Aug 20, 2024


- Do not checkDuplicates for addition of non loaded TRANSIENT resource
(just created) in NEW folder (non committed yet)but just invalidate
resourcePath cache.
- Undo/redo of creation/deletion scenario are not impacted: newNode is a
loaded resource.

This optimize the export scenario which has a +20% time degradation with
330 diagrams (60 to 84s).

Change-Id: I40e74a4f34de84bfb3ca4570af66610c594a1838
Signed-off-by: Maxime Porhel <maxime.porhel@obeo.fr>
mPorhel added a commit to mPorhel/cdo that referenced this issue Aug 20, 2024
This optimize Team for Capella export scenario which has a +20% time
degradation with a project containing 330 diagrams (60 to 84s).

Change-Id: Id0cbfae548fcd705546a62ba5067415f5c8a4c4d
Signed-off-by: Maxime Porhel <maxime.porhel@obeo.fr>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant