Beim regulären Stopp des Lobster Integration Servers bringt das System noch laufende Jobs zu Ende. Der Stopp verzögert sich also, bis diese Jobs abgeschlossen sind. Ab dem Auslösen des Stopps startet das System aber keine neuen Jobs mehr.
In bestimmten Fällen läuft ein Profil sehr lange, etwa wenn die Verarbeitung außergewöhnlich viel Zeit benötigt oder das Zielsystem in Phase 6 nicht mehr antwortet. In diesem Zustand lässt sich der Integration Server nicht erneut starten. Der Administrator muss dann entscheiden, ob er den Stopp erzwingt. Der Klickpfad dorthin ist Verwaltung > Basis-Einstellungen > System, DMZ, Loadbalancing.
ACHTUNG:
Prüfen Sie vor dem Erzwingen des Stopps, dass keine relevanten Verarbeitungsprozesse mehr laufen. Nur lang dauernde oder hängengebliebene Cron-Operationen dürfen noch aktiv sein. Andernfalls kann das System aktuell bearbeitete Daten verlieren.
Solange der alte Prozess nicht vollständig beendet ist, darf kein neuer Start des Integration Servers erfolgen.
ACHTUNG:
Starten Sie den Integration Server erst, wenn der alte Prozess vollständig beendet ist. Ein verfrühter Start kann zu einem inkonsistenten Systemzustand führen. Warten Sie nach dem Beenden kurz ab, da Netzwerkverbindungen auf Systemebene noch einige Sekunden bestehen bleiben können.
Weitere Details finden Sie im Abschnitt Automatisches Beenden eines unvollständig gestarteten Integration Servers.
Crashed Jobs
Siehe auch Abschnitt Vorhaltezeit von Backup-Dateien, Logs, Crashed Jobs.
Bricht ein Job durch einen erzwungenen Abbruch ab, markiert ihn das System als „Crashed Job" – einen Job, dessen Verarbeitung unterbrochen wurde. Bei einem Neustart von Lobster Integration startet das System alle Crashed Jobs neu. Die Verarbeitung beginnt dabei nicht an der Abbruchstelle, sondern wieder von vorn.
Erfolgte der Abbruch nach Phase 3, hat das System bereits alle Funktionen ausgeführt. Das betrifft auch autonumber-Funktionen und Datenbankoperationen in Funktionen. Entwickler und Anwender müssen deshalb die Möglichkeit eines Crashs bei der Profilimplementierung berücksichtigen und die Auswirkungen einer erneuten Ausführung bewerten.
Ein Crashed Job kann auch durch einen Rechnerabsturz, einen Hardwarefehler oder einen Stromausfall entstehen. Auch in diesem Fall startet das System die Crashed Jobs nach einem Neustart neu.
Lobster Integration verarbeitet Crashed Jobs nach folgendem Prinzip:
Voraussetzung: In der Konfigurationsdatei
./etc/startup.xmlsteht der ParametertrackCrashedJobsauftrue.Bei jedem Jobstart legt Lobster Integration eine Datei im Verzeichnis
./datawizard/backup/lockan.Nach Abschluss eines Jobs löscht das System die Datei wieder, unabhängig vom Ergebnis.
Die Datei heißt
<Jobnummer>.lckund lässt sich mit einem Texteditor öffnen.Sie enthält die Jobnummer, den Namen der Eingangsdatei und die ID (nicht den Namen) des zugehörigen Profils.
Da die Datei keine originalen Nutzdaten enthält, muss für einen Neustart die Backup-Datei des Jobs vorhanden sein.
Sind Crashed Jobs vorhanden, existieren die Backups noch und ist das Feature aktiviert, startet das System die Jobs nach einer einstellbaren Zeit neu (Parameter
restoreWaitTimein./etc/startup.xml).Die Detail-Logs im Control Center vermerken den Neustart eines Crashed Jobs.
Ist das Feature nicht aktiviert, erstellt das System nur einen Eintrag in der Datenbank-Tabelle
dw_log_sum, damit der Crashed Job für Benutzer sichtbar bleibt.
Stabilisieren Sie die Systemumgebung in einem Produktivsystem, um die Häufigkeit von Crashed Jobs zu minimieren.
Neustart von Crashed Jobs verhindern
Verwenden Sie den Parameter startCrashedJobs in der Konfigurationsdatei ./etc/startup.xml, um den Neustart aller Crashed Jobs zu verhindern.
Wenn Sie nur einzelne Crashed Jobs am Neustart hindern wollen, suchen Sie im Unterordner lock des Backup-Verzeichnisses nach Dateien mit dem Namen <Jobnummer>.lck. Löschen Sie die betreffenden Dateien selektiv. Der Standardwert für das Backup-Verzeichnis ist ./datawizard/backup, siehe Parameter backupDir in der Konfigurationsdatei ./etc/startup.xml.
Mit dem Parameter ignoreOldCrashedJobs verhindern Sie den Neustart von Crashed Jobs, die älter als eine festgelegte Anzahl an Tagen sind.