Deadlock-Analyse ein- und ausschalten.
Geltungsbereich
DBH-Administration
Funktionsbeschreibung
Die Anweisung SET-SESSION-DIAGNOSIS steuert die zusätzliche Informationsausgabe (Deadlock-Analyse) bei Auftreten eines Deadlock.Nähere Informationen zum Thema Deadlock finden Sie im " Basishandbuch".
SET-SESSION-DIAGNOSIS | ||||||||||||||||||||
|
Operandenbeschreibung
DIAGNOSIS =
Legt fest, ob bei Auftreten eines Deadlock zusätzlich zur Meldung SES3201 weitere Informationen zum Deadlock auf SYSLST ausgegeben werden.
DIAGNOSIS = *ON(SELECT=*DEADLOCK-ANALYSIS)
Eine Deadlock-Analyse wird ausgegeben.
DIAGNOSIS = *OFF(SELECT=*DEADLOCK-ANALYSIS)
Es werden keine weiteren Informationen ausgegeben.
Beispiel
SYSLST-Ausgabe nach SET-SESSION-DIAGNOSIS DIAGNOSIS=*ON(SELECT= *DEADLOCK-ANALYSIS) und nach Auftreten eines Deadlock:
******************** DEADLOCK-BEGIN ******************** USER: D016ZE09TSN=8NLGDSQL OBJECT: 00020002000800000000000700050401 ROW USER: D016ZE09TSN=8NLFDSQL OBJECT: 00020002000B00000000000600050401 ROW ******************** DEADLOCK-END ********************** <date> <time> SES3201 DEADLOCK RESOLUTION SESAM USER ID: D016ZE09TSN=8NLGDSQL %//
Erläuterung der Ausgaben
Die Zeilen zwischen DEADLOCK-BEGIN
und DEADLOCK-END
beschreiben den Zyklus der wartenden Benutzer ausgehend von der verursachenden Transaktion. Dabei werden abwechselnd eine USER- und eine OBJECT-Zeile geschrieben. Die Reihenfolge der Zeilen beschreibt die Wartebeziehungen. Ein Benutzer wartet auf den darauf folgenden Benutzer, das verursachende Objekt steht dazwischen. Der zuletzt ausgebene Benutzer wartet auf den ersten Benutzer.Im Beispiel wartet die die Anwendertask mit TSN 8NLG auf die Anwendertask mit TSN 8NLF und umgekehrt.
Es folgt die Meldung SES3201
. Im Beispiel wurde die Anwendertask mit TSN 8NLG zurückgesetzt.
Ausgabezeile USER
Enthält die Identifikation des Auftraggebers.
Bei UTM-Anwendern erscheint der Vorgangszähler.
Ausgabezeile OBJECT
Die Ausgabe zum Objekt beinhaltet:
interne Informationen zur Objekt-Identifikation (abhängig vom Objekt), z.B.:
Distanz 0: Identifikationsnummer der zugehörigen Datenbank. Diese Nummer entspricht der Reihenfolge in der die Datenbanken bei SHOW-SQL-DB-CATALOG-ENTRIES ausgegeben werden, siehe "SHOW-SQL-DB-CATALOG-ENTRIES".
Distanz 2: Identifikationsnummer des zugehörigen Space (nicht für DBC). Diese entspricht dem Inhalt der Spalte SPACE_ID der Tabelle SYS_SPACES im SYS_INFO_SCHEMA (nicht für Objekttyp DBC), siehe " SQL-Sprachbeschreibung Teil 1: SQL-Anweisungen".
Distanz 4: Identifikationsnummer der Tabelle (bei TABLE und ROW). Diese entspricht dem Inhalt der Spalte TABLE_ID der Table SYS_TABLES im SYS_INFO_SCHEMA .
Diese Identifikationsnummern sind auch in den SESCOSP-Auswertungen enthalten (siehe Abschnitt „Catalog-Space-Table-Zuordnungstabelle“). Mit dieser Tabelle können ebenfalls die zugehörigen Namen ermittelt werden, wenn während der Protokollierung ein Zugriff erfolgte.
Für eine detaillierte Analyse wenden Sie sich bitte an den Service.
den Objekttyp
TABLE
Sperre einer Tabelle
ROW
Sperre eines Satzes einer Tabelle
INDEX
Sperre eines gesamten Index
SI-VAL
Sperre eines Wertes im Index
DBC
Eintrag aus SQL-Datenbankverzeichnis (Catalog-Sperre)
SPACE
Sperre des Anwender-Space
PLAN
Plansperre
META
Sperre auf Metadatenbereich
Administrationskommando im ISP-Format und an der CALL-DML-Schnittstelle
Nicht verfügbar.