| Summary: | Improper unload of in-memory resources | ||
|---|---|---|---|
| Product: | [Modeling] Sirius | Reporter: | Laurent Fasani <laurent.fasani> |
| Component: | Core | Assignee: | Pierre-Charles David <pierre-charles.david> |
| Status: | CLOSED FIXED | QA Contact: | |
| Severity: | normal | ||
| Priority: | P3 | CC: | florian.barbin, julien.dupont, pierre-charles.david, william.piers |
| Version: | 4.1.1 | Keywords: | triaged |
| Target Milestone: | 5.1.0 | ||
| Hardware: | All | ||
| OS: | All | ||
| See Also: |
https://git.eclipse.org/r/103440 https://git.eclipse.org/c/sirius/org.eclipse.sirius.git/commit/?id=82112831e1d5f557b444e9e8b9be7baed927ce58 |
||
| Whiteboard: | |||
| Bug Depends on: | 510893 | ||
| Bug Blocks: | 521236 | ||
|
Description
Laurent Fasani
The code InMemoryResourceFactoryImpl.IN_MEMORY_BUFFERS.remove(uri); should not be done in unload method anymore. It is similar to if XMIResource was deleted from the disk at unload. To find a global and pertinent solution, let's understand that IN_MEMORY_BUFFERS is used to implement org.eclipse.sirius.tools.internal.resource.InMemoryURIConverterImpl.exists(URI, Map<?, ?>) that is used in DASI sub classes. This bug is also related to Bug 469161 The initial plan was to partially rewrite the InMemoryResource code, as it does a lot of strange/non-standard things, but given the time left for 5.0, we'll only report the specific fix that was done on v4.1.x. I'll create a separate ticket for later (maybe 5.1) to review this code more completely. New Gerrit change created: https://git.eclipse.org/r/103440 (In reply to Pierre-Charles David from comment #2) > I'll create a > separate ticket for later (maybe 5.1) to review this code more completely. See but #521237. Gerrit change https://git.eclipse.org/r/103440 was merged to [master]. Commit: http://git.eclipse.org/c/sirius/org.eclipse.sirius.git/commit/?id=82112831e1d5f557b444e9e8b9be7baed927ce58 Fixed by 82112831e1d5f557b444e9e8b9be7baed927ce58. Can not be verified: missing or incomplete reproduction information. Closing as verified, as this is a cherry-pick of the change made in #510893 which could only be reproduced in a product-specific context and had been validated by the original reporter. Available in Sirius 5.1.0, see https://wiki.eclipse.org/Sirius/5.1.0. |