Systemfehler
Während des Systembetriebs können verschiedene Arten von Fehlern auftreten. In der folgenden Tabelle werden einige dieser Fehler beschrieben.
| Kategorie | Beschreibung | Beispiel |
|---|---|---|
| Benutzerfehler | Ein Fehler seitens des Benutzers, üblicherweise wegen falscher oder ungültiger Eingabe. | Ungültiger Benutzername, ungültige SQL-Syntax. |
| Komponentenfehler | Ein Fehler einer Hardware- oder Softwaresystemkomponente. | SPU-Fehler; Absturz eines Hostprozesses. |
| Umgebungsfehler | Eine Anforderung einer Umgebungsfunktion schlägt fehl. Dies wird oft durch Ressourcen- oder Zugriffsprobleme verursacht. | Gesperrte Datei; voller Puffer. |
| Behebbarer interner Fehler | Ein erkannter interner Programmierfehler, der nicht schwerwiegend genug ist, um das Programm abzubrechen. | Unbekannter Fallwert oder unbekannter Nachrichtentyp; Schließen einer Datei fehlgeschlagen. |
| Nicht behebbarer interner Fehler | Ein erkannter interner Programmierfehler oder ein fehlerhafter interner Status, der den Programmabbruch verursacht. | Kernfehler, Datenverlust im Hauptspeicher, fehlgeschlagener Assert. |
Das System Netezza Performance Server für Cloud Pak for Data und Netezza Performance Server für Cloud Pak for Data System kann die folgenden Aktionen ausführen, wenn ein Fehler auftritt:
- Fehlernachricht anzeigen
- Zeigt den Benutzern eine Fehlernachrichtenzeichenfolge an, die den Fehler beschreibt. Dies ist die übliche Systemantwort, wenn eine Benutzeranforderung nicht erfüllt werden kann.
- Wiederholen Sie die Aktion
- Bei zeitweiligen oder vorübergehenden Fehlern versuchen Sie es erneut, bis die Fehlerbedingung nicht mehr auftritt. Die Neuversuche sind oft erforderlich, wenn Ressourcen eingeschränkt sind, ein Engpass aufgetreten ist oder eine Sperre vorliegt.
- Failover
- Wechselt zu einer Alternativ- oder Ersatzkomponente, wenn eine aktive Komponente ausgefallen ist. Failover ist ein Recovery-Mechanismus auf Systemebene und kann von einem Systemmonitor oder einem Fehler ausgelöst werden, der von der Software erkannt wird, die versucht, die Komponente zu nutzen.
- Fehler protokollieren
- Fügt einen Eintrag zu einem Komponentenprotokoll hinzu. Ein Protokolleintrag enthält ein Datum und eine Zeit, eine Wertigkeitsstufe und eine Fehler-/Ereignisbeschreibung.
- Ereignisbenachrichtigung senden
- Sendet eine Benachrichtigung per E-Mail oder durch Ausführen eines Befehls. Die Entscheidung, ob eine Ereignisbenachrichtigung gesendet werden soll, basiert auf einer Gruppe vom Benutzer konfigurierbarer Ereignisregeln.
- Programm abbrechen
- Beendet das Programm, da es aufgrund eines nicht behebbaren fehlerhaften Status nicht fortgesetzt werden kann oder weil die weitere Programmausführung zu fehlerhaften Benutzerdaten führen würde. Die Software-Asserts, die interne Programmierfehler erkennen, fallen oft in diese Kategorie, da es schwierig ist zu ermitteln, ob die weitere Ausführung sicher ist.
- Ressourcen bereinigen
- Gibt nicht mehr benötigte Ressourcen frei. Softwarekomponenten sind für die Bereinigung ihrer eigenen Ressourcen verantwortlich. In vielen Fällen werden Ressourcen lokal als Teil einer bestimmten Fehlerbehandlungsroutine freigegeben. In schwerwiegenden Fällen wird eine Programmbereinigungsroutine ausgeführt, bevor das Programm beendet wird und noch gehaltene Ressourcen freigibt.