Workflows und Transaktionsverarbeitung
Die Anwendung Orchestration & Automation verwendet die Transaktionsverarbeitung, um die Arbeit in einzelne und unteilbare Operationen, die als Transaktionen bezeichnet werden, aufzuteilen.
Alle API-Methoden und Hintergrundjobs (wie z. B. das erneute Scannen von Artefakten) verwenden Transaktionen. Wenn eine API-Methode oder ein Hintergrundjob dazu führt, dass eine Workflowoperation eingeleitet wird, wird der Workflow Teil der Transaktion. Dies gilt unter anderem für untergeordnete Workflows, die gestartet oder ausgeführt werden, sowie für aufgerufene Funktionen, aufgerufene Scripts oder Nachrichten, die an Nachrichtenziele gesendet werden. Wenn in einem Workflow Störungen auftreten (z. B. ein Fehler in einem Script), schlägt die Transaktion fehl und die API-Anforderung oder der Hintergrundprozess wird abgebrochen. In diesem Fall werden alle Auswirkungen der Workflowtransaktion rückgängig gemacht und der Workflow wird in seinem vorherigen Status belassen, falls er überhaupt ausgeführt wird.
Wenn alle Workflows in einer Transaktion in einen Wartezustand übergehen und alle anderen Transaktionsoperationen abgeschlossen sind, wird die Transaktion beendet. Eine nachfolgende API-Operation führt dazu, dass der Workflow den Wartezustand verlässt und als Teil der Transaktion der betreffenden API-Operation fortfährt.
- Die Feststellung einer offenen Task, wenn der Workflow eine Task eingefügt hat oder zuvor bereits eine Task vorhanden war, die noch offen ist.
- Senden an ein Nachrichtenziel, bei dem die "Expect Acknowledgment" (Bestätigung erwarten) aktiviert ist.
- Der Aufruf einer Funktion.