
Die Sperrtabelle
Definition
Die Sperrtabelle ist eine Tabelle im Hauptspeicher des Enqueue-Servers, in der festgehalten wird, welche Sperren derzeit bestehen. Für jede bestehende Elementarsperre gibt sie die Eigentümer, den Sperrmodus, den Namen und die Felder der gesperrten Tabelle an.
Verwendung
Die Sperrtabelle dient zur Verwaltung der Sperren. Bei jeder Sperranfrage, die den Enqueue-Server erreicht, wird in der Sperrtabelle nachgesehen, ob die Sperranfrage mit einer bestehenden Sperre kollidiert (siehe
Kollisionen von Sperren). Wenn ja, wird die Anfrage zurückgewiesen, wenn nein, wird die neue Sperre in die Sperrtabelle geschrieben.Struktur
Jede Elementarsperre, die derzeit gesetzt ist, entspricht einem Datensatz in der Sperrtabelle.
Die folgende Grafik zeigt die Struktur der Sperreinträge.

Hierbei haben die einzelnen Felder die folgende Bedeutung:
Feld |
Inhalt und Bedeutung | |
Eigentümer_1 |
Eigentümer-Id und Kumulationszähler des Eigentümer_1: die Id enthält den Rechnernamen, den Workprozeß, einen Zeitstempel und wird auch verwendet, um die SAP-LUW zu identifizieren. Der Kumulationszähler gibt an, wie oft der Eigentümer diese Elementarsperre schon gesetzt hat. | |
Eigentümer_2 |
analog für Eigentümer_2 | |
Backup-Id |
Backup-Id (Index, wo der Sperreintrag in der Backup-Datei gespeichert ist) und Backup-Flag (0 (kein Backup) oder 1 (Backup)). | |
Elementarsperre |
Sperrmodus |
S (Shared lock, Lesesperre)E (Exclusive lock, Schreibsperre) X (eXclusive lock, erweiterte Schreibsperre, nicht kumulierbar) |
Name |
Name der Datenbanktabelle, in der Felder gesperrt werden sollen | |
Argument |
gesperrte Felder in der Datenbanktabelle (aneinandergehängte Schlüsselfelder, kann auch Wildcards enthalten) | |
Integration
Zu Diagnosezwecken kann man sich die Sperreinträge ansehen. Dies ist unter
Sperreinträge verwalten beschrieben.