Wenn eine Komponente scheitert, werden ihre Auswirkungen rückgängig gemacht.
Angenommen, eine
Group
enthält drei nicht-optionale
Content
-Anker, die Werte in Datenbehältern speichern. Falls der dritte
Content
-Anker fehlschlägt, schlägt auch die
Group
fehl. Das Skript macht die Wirkungen der ersten beiden
Content
-Anker rückgängig. Die Daten, die von den ersten beiden
Content
-Ankern bereits in Datenbehältern gespeichert wurden, werden wieder entfernt.
Rückgängig gemacht werden nur die primären Wirkungen einer Umwandlung, etwa bei einem Parser das Speichern von Werten in Datenbehältern oder bei einem Serializer das Schreiben von Daten in die Ausgabedatei. Nebenwirkungen werden nicht rückgängig gemacht. Im obenstehenden Beispiel gilt: Wenn
Group
eine
WriteValue
-Aktion enthält, die eine Zeile in eine Textausgabedatei schreibt, wird die Zeile nicht gelöscht.