verwendetes Datenbanksystem: MsSql-Server
Halo zusammen,
ich habe einen SQL-Server-Agent-Job der immer fehlschlägt, wenn er automatisch ausgeführt wird. Die Fehlermeldung lautet:
Fehlermeldung:
Ausgeführt als Benutzer: ''NT SERVICE\SQLSERVERAGENT''. Die Transaktion (Prozess-ID 72) befand sich auf Sperre Ressourcen aufgrund eines anderen Prozesses in einer Deadlocksituation und wurde als Deadlockopfer ausgewählt. Führen Sie die Transaktion erneut aus. [SQLSTATE 40001] (Fehler 1205). Fehler bei Schritt.
Der Job ist nicht sonderlich kompliziert und läuft normalerweise innerhalb von 10 Sekunden durch.
Führe ich den SQL-Code manuell aus, ergibt sich kein Problem. Stoße ich den Agent manuell an, wird der Job ebenfalls einfwandfrei durchgeführt. Der Benutzerkontext ist dabei der gleich:
Ausgeführt als Benutzer: ''NT SERVICE\SQLSERVERAGENT''. Der Schritt war erfolgreich.
Es ist auch vollkommen egal, um welche Uhrzeit der Job ausgeführt wird.
Hat jemand eine Erklärung?
Vielen Dank!
Du bist lang genug dabei, bitte verwende die entsprechenden Code-Tags [Hinweis] Wie poste ich richtig?
Du musst erst einmal feststellen was genau den Deadlock verursacht.
Brent Ozar hat da erst kürzlich eine kleine Zusammenfassung dazu erstellt:
Brentozar.com: Troubleshoot Blocking & Deadlock