SQL Server Deadlock Objekt-IDs sind zu groß

stimmen
6

Ich versuche, eine Sackgasse zu verfolgen, die in unserer SQL 2005-Datenbank (64-Bit) auftreten. Wir derzeit nicht die Snapshot-Isolation aktiviert haben.

Ich drehte mich auf tf-1204 und die Ausgabe unten erhalten.

Von diesem Ausgang eine gespeicherte Prozedur, die Knoten 1 ist zu bestimmen, ich bin in der Lage, die Daten auswählt und nur modifiziert Werte in #temp Tabellen.

Knoten 2 ist eine weitere gespeicherte Prozedur macht ein einfaches Primärschlüssel basierte Update auf einer einzige Zeile von Daten.

Was ich nicht feststellen kann, ist die tatsächliche Ressource, die im Rennen hier war. Die Schlüssel von 10: 72057594060734464 und 10: 72057594038910976 mir erlauben, um die Datenbank zu bestimmen, aber dieser Objekt-IDs nicht mit object_name gelöst werden. In der Tat sollten sie int-Werte, so dass ich bin mir nicht sicher, wo diese großen Zahlen kommen aus.

Bei der Erforschung des Problems konnte ich Ähnliche Werte aus Aktivitätsmonitor für Objekt-ID sowie bekommen.

Wie löse ich dieses Objekt-IDs?

Hier ist die Deadlock tf-1204 Ausgabe:

2008-12-05 07: 48: 28.19 spid4s ----------------------------------
2008-12-05 07: 48: 28.19 spid4s Deadlock Start Suche 634
2008-12-05 07: 48: 28.19 spid4s Zielressource Besitzer:
2008-12-05 07: 48: 28.19 spid4s ResType: LockOwner Stype: 'OR'Xdes: 0x00000000813B8700 Modus: X SPID: 77 BatchID: 0 ECID: 0 TaskProxy: (0x00000000CE6D8598) Wert: 0x1043f980
2008-12-05 07: 48: 28.19 spid4s 0: Einfügen neuer Knoten: Knoten: 1 ResType: LockOwner Stype: 'OR'Xdes: 0x00000000813B8700 Modus: X SPID: 77 BatchID: 0 ECID: 0 TaskProxy: (0x00000000CE6D8598) Wert: 0x1043f980
2008-12-05 07: 48: 28.19 spid4s 1: SearchOR neue Blocker Unter Berücksichtigung - Aufgabe: 0000000000EC5198, Worker 00000000C89881C0
2008-12-05 07: 48: 28.19 spid4s 2: Einfügen neuer Knoten: Knoten: 2 ResType: LockOwner Stype: 'OR'Xdes: 0x00000000808F1A80 Modus: S SPID: 79 BatchID: 0 ECID: 0 TaskProxy: (0x0000000129E82598) Wert: 0x1063d000
2008-12-05 07: 48: 28.19 spid4s 3: SearchOR neue Blocker Unter Berücksichtigung - Aufgabe: 0000000000C3FC18, Worker 00000000F847C1C0
2008-12-05 07: 48: 28.19 spid4s 4: InsertKnown Zyklus zwischen alten res Besitzer gefunden: [ResType: LockOwner Stype: 'OR'Xdes: 0x00000000813B8700 Modus: X SPID: 77 BatchID: 0 ECID: 0 TaskProxy: (0x00000000CE6D8598) Wert: 0x1043f980] und neue res owner [ResType: LockOwner Stype: 'OR'Xdes: 0x00000000813B8700 Modus: X SPID: 77 BatchID: 0 ECID: 0 TaskProxy: (0x00000000CE6D8598) Wert: 0x1043f980]
2008-12-05 07: 48: 28.19 spid4s 4: InsertKnown Sucher: Deadlock gefunden (Blockierung Besitzer sind auf einem Stapel)
2008-12-05 07: 48: 28.19 spid4s 3: SearchOR Sucher: gefunden Deadlock (Zyklus auf dieser Ebene oder vor)
2008-12-05 07: 48: 28.19 spid4s 1: SearchOR Sucher: gefunden Deadlock (Zyklus auf dieser Ebene oder vor)
2008-12-05 07: 48: 28.19 spid4s      
2008-12-05 07: 48: 28.19 spid4s Deadlock Zyklus aufgetreten .... Überprüfung Zyklus
2008-12-05 07: 48: 28.19 spid4s 0: Einfügen neuer Knoten: Knoten: 1 ResType: LockOwner Stype: 'OR'Xdes: 0x00000000813B8700 Modus: X SPID: 77 BatchID: 0 ECID: 0 TaskProxy: (0x00000000CE6D8598) Wert: 0x1043f980 Kosten: (0/1544)
2008-12-05 07: 48: 28.19 spid4s 1: SearchOR neue Blocker Unter Berücksichtigung - Aufgabe: 0000000000EC5198, Worker 00000000C89881C0
2008-12-05 07: 48: 28.19 spid4s 2: Einfügen neuer Knoten: Knoten: 2 ResType: LockOwner Stype: 'OR'Xdes: 0x00000000808F1A80 Modus: S SPID: 79 BatchID: 0 ECID: 0 TaskProxy: (0x0000000129E82598) Wert: 0x1063d000 Kosten: (0/0)
2008-12-05 07: 48: 28.19 spid4s 3: SearchOR neue Blocker Unter Berücksichtigung - Aufgabe: 0000000000C3FC18, Worker 00000000F847C1C0
2008-12-05 07: 48: 28.19 spid4s 4: InsertKnown Zyklus zwischen alten res Besitzer gefunden: [ResType: LockOwner Stype: 'OR'Xdes: 0x00000000813B8700 Modus: X SPID: 77 BatchID: 0 ECID: 0 TaskProxy: (0x00000000CE6D8598) Wert: 0x1043f980 Kosten: (0/1544)] und neue res owner [ResType: LockOwner Stype: 'OR'Xdes: 0x00000000813B8700 Modus: X SPID: 77 BatchID: 0 ECID: 0 TaskProxy: (0x00000000CE6D8598) Wert: 0x1043f980 Kosten :( 0/1544)]
2008-12-05 07: 48: 28.19 spid4s 4: InsertKnown Sucher: Deadlock gefunden (Blockierung Besitzer sind auf einem Stapel)
2008-12-05 07: 48: 28.19 spid4s 3: SearchOR Sucher: gefunden Deadlock (Zyklus auf dieser Ebene oder vor)
2008-12-05 07: 48: 28.19 spid4s 1: SearchOR Sucher: gefunden Deadlock (Zyklus auf dieser Ebene oder vor)
2008-12-05 07: 48: 28.19 spid4s Deadlock aufgetreten .... Deadlockinformationen Drucken
2008-12-05 07: 48: 28.19 spid4s Wait-for Graph
2008-12-05 07: 48: 28.19 spid4s      
2008-12-05 07: 48: 28.19 spid4s Knoten: 1

2008-12-05 07: 48: 28.19 spid4s KEY: 10: 72057594060734464 (c80089667602) CleanCnt: 3 Modus: S Flags: 0x0
2008-12-05 07: 48: 28.19 spid4s Grant-Liste 1:
2008-12-05 07: 48: 28.19 spid4s Besitzer: 0x000000011063CDC0 Modus: S Flg: 0x0 Ref: 1 Life: 00000000 SPID: 79 ECID: 0 XactLockInfo: 0x00000000808F1AB8
2008-12-05 07: 48: 28.19 spid4s SPID: 79 ECID: 0 Typ Statement: INSERT-Linie # IGNORE: 220
2008-12-05 07: 48: 28.19 spid4s Eingang Buf: RPC-Ereignis: Proc [Datenbank-ID = 10 Objekt-ID = 1751794144]
2008-12-05 07: 48: 28.19 spid4s Angefordert von: 
2008-12-05 07: 48: 28.19 spid4s ResType: LockOwner Stype: 'OR'Xdes: 0x00000000813B8700 Modus: X SPID: 77 BatchID: 0 ECID: 0 TaskProxy: (0x00000000CE6D8598) Wert: 0x1043f980 Kosten: (0/1544)
2008-12-05 07: 48: 28.19 spid4s      
2008-12-05 07: 48: 28.19 spid4s Knoten: 2

2008-12-05 07: 48: 28.19 spid4s KEY: 10: 72057594038910976 (0c0092f62b82) CleanCnt: 2-Modus: X Flags: 0x0
2008-12-05 07: 48: 28.19 spid4s Grant-Liste 0:
2008-12-05 07: 48: 28.19 spid4s Besitzer: 0x000000011043F300 Modus: X Flg: 0x0 Ref: 0 Life: 02000000 SPID: 77 ECID: 0 XactLockInfo: 0x00000000813B8738
2008-12-05 07: 48: 28.19 spid4s SPID: 77 ECID: 0 Typ Statement: UPDATE Linie #: 23
2008-12-05 07: 48: 28.19 spid4s Eingang Buf: RPC-Ereignis: Proc [Datenbank-ID = 10 Objekt-ID = 1791462302]
2008-12-05 07: 48: 28.19 spid4s Angefordert von: 
2008-12-05 07: 48: 28.19 spid4s ResType: LockOwner Stype: 'OR'Xdes: 0x00000000808F1A80 Modus: S SPID: 79 BatchID: 0 ECID: 0 TaskProxy: (0x0000000129E82598) Wert: 0x1063d000 Kosten: (0/0)
2008-12-05 07: 48: 28.19 spid4s      
2008-12-05 07: 48: 28.19 spid4s Victim Ressourcen Besitzer:
2008-12-05 07: 48: 28.19 spid4s ResType: LockOwner Stype: 'OR'Xdes: 0x00000000808F1A80 Modus: S SPID: 79 BatchID: 0 ECID: 0 TaskProxy: (0x0000000129E82598) Wert: 0x1063d000 Kosten: (0/0)
2008-12-05 07: 48: 28.19 spid4s End Deadlock Suche 634 ... wurde ein Deadlock gefunden.
2008-12-05 07: 48: 28.19 spid4s ----------------------------------
Veröffentlicht am 09/12/2008 um 21:02
quelle vom benutzer
In anderen Sprachen...                            


1 antworten

stimmen
10

Diese IDs beziehen sich eigentlich auf hobts ​​(Heap oder Binary Tree), in sys.partitions gefunden. Versuchen Sie, die folgende Abfrage innerhalb Datenbank 10, und Sie werden feststellen, welches Objekt und welcher Index betroffen ist.

SELECT hobt_id, object_name(p.[object_id]), index_id 
FROM sys.partitions p 
WHERE hobt_id = 72057594060734464
Beantwortet am 09/12/2008 um 23:28
quelle vom benutzer

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more