Fehlgeschlagene Tasks stoppen
Der Scheduler führt Tasks standardmäßig in einem globalen Transaktionskontext aus. Falls eine Task aufgrund eines Konfigurations- oder Anwendungsfehlers fehlschlägt, versucht der Scheduler, diese Task so oft zu wiederholen, bis der im Scheduler konfigurierte Schwellenwert erreicht ist. Sie können die Tasks, die fehlschlagen, stoppen.
Vorbereitende Schritte
Der Standardfehlerschwellenwert des Schedulers ist 10 und kann mit der angepassten Eigenschaft "taskFailureThreshold" des Schedulers konfiguriert werden. Zum Konfigurieren dieser angepassten Eigenschaft klicken Sie in der Administrationskonsole auf Ressourcen > Scheduler > Schedulername und dann auf Angepasste Eigenschaften. Gültige Werte sind alle nicht negativen ganzen Zahlen, d. h. Zahlen größer als 0.
Informationen zu diesem Vorgang
Vorgehensweise
- Eine transaktionsorientierte (QOS_ONLYONCE) Task abbrechen oder aussetzen, in der wiederholt Fehler auftreten. Diese Aktion kann schwierig sein, wenn der Scheduler den Fehlerschwellenwert noch nicht erreicht hat. Die Methoden "cancel" (Abbrechen) und "suspend" (Aussetzen) der Scheduler-API- oder WASScheduler-MBean-Operationen blockieren, bis die Task fehlschlägt oder die Methode das zulässige Zeitlimit überschreitet, während sie auf eine Datenbanksperre warten und lösen eine Ausnahme des Typs TaskPending aus. In einem solchen Fall kann die Anwendung versuchen, die Operation zu wiederholen, bis sie abgeschlossen wird.
- Alternativ können Sie den Schedulerdämon mit der Operation "stopDaemon" der MBean "WASScheduler" stoppen, um zu verhindern, dass die Task mehrfach ausgeführt wird, und die Abbruch- oder Aussetzoperation dann ausführen. Während der Dämon gestoppt ist, führt der Scheduler keine Tasks aus. Die MBean-Operationen und API-Methoden sind jedoch weiterhin verfügbar.