Sie können die Systemprozedur sa_conn_info verwenden, um zu ermitteln, welche Verbindungen in einem Deadlock blockiert sind. Diese Prozedur gibt eine Ergebnismenge zurück, die aus einer Zeile für jede Verbindung besteht. Eine Spalte der Ergebnismenge listet auf, warum die Verbindung blockiert und mit welcher Verbindung diese Blockierung eingetreten ist. Die Ergebnismenge gibt an, ob eine Verbindung blockiert ist, und welche Verbindung sie blockiert.
Sie können auch ein Deadlock-Ereignis verwenden, um Aktionen durchzuführen, wenn der Deadlock eintritt. Der Event-Handler kann mit der Prozedur sa_report_deadlock Informationen über die Bedingungen erhalten, die zum Deadlock geführt haben. Um weitere Details über den Deadlock vom Datenbankserver abzurufen, verwenden Sie die Option log_deadlocks und die Funktion RememberLastStatement.
Das folgende Beispiel zeigt, wie Sie ein Tabellen- und Systemereignis einrichten, das verwendet werden kann, um Informationen über Deadlocks bei ihrem Auftreten zu beziehen. Wenn bei Ihrer Anwendung häufig Deadlocks auftreten, können Sie die Anwendungsprofilerstellung verwenden, um die Ursache von Deadlocks zu diagnostizieren.
![]() |
Kommentieren Sie diese Seite in DocCommentXchange.
|
Copyright © 2013, SAP AG oder ein SAP-Konzernunternehmen. - SAP Sybase SQL Anywhere 16.0 |