Bugfix
Detail
#26804
Keine konsistente Löschung von Modellelementen beim Modell-Upgrade
Wird beim Booten eines neuen Softwarestandes mit einer neuen Modell-Version erkannt, dass ein Modell-Element gelöscht werden soll, wird diese Löschung im Rahmen der automatischen Datenmigration ausgeführt.
Wenn dabei ein ganzer Typ inklusive einer Referenz auf einen anderen Typ gelöscht wird, bleibt im Datenbestand die Assoziation, auf welche die Referenz abgebildet wird, zurück. Normalerweise hat das keine schädlichen Auswirkungen, wenn danach allerdings versucht wird denselben Typ (mit demselben Namen) und einer Referenz mit demselben Namen wieder anzulegen, scheitert dies mit der Fehlermeldung, dass die entsprechende Assoziation bereits existiert.
Test
- Anwendung erstellen.
- Modul M` erstellen mit Typen `A und B` und einem referenzwertigen Attribut `ab in A`, das auf `B zeigt.
- Modul in die IDE übernehmen.
- Anwendung herunterfahren.
- Anweung neu booten und erneut herunterfahren.
- In der IDE Typ A aus der Modelldefinition löschen.
- Anwendung booten.
- Erwartung, Typ A existiert nicht mehr.
- Anwendung herunterfahren.
- In der IDE Typ A` mit seiner Referenz auf `B wieder anlegen.
- Anwendung starten.
- Erwartung: Typ A` existiert wieder und hat wieder eine Referenz auf `B.