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).