Skip to content

Commit 35bec1b

Browse files
Merge pull request #34691 from rwestMSFT/rw-0606-fix-49951
Deadlock guide: Add link to plan capture blog post (UUF 49951)
2 parents e2cef89 + dd78cc2 commit 35bec1b

File tree

1 file changed

+8
-6
lines changed

1 file changed

+8
-6
lines changed

docs/relational-databases/sql-server-deadlocks-guide.md

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
---
2-
title: Deadlocks guide
2+
title: Deadlocks Guide
33
description: Learn about deadlocks in the SQL Server Database Engine.
44
author: MikeRayMSFT
55
ms.author: mikeray
66
ms.reviewer: randolphwest, wiassaf
7-
ms.date: 09/16/2024
7+
ms.date: 07/14/2025
88
ms.service: sql
99
ms.subservice: performance
1010
ms.topic: conceptual
@@ -21,7 +21,7 @@ monikerRange: ">=aps-pdw-2016 || =azuresqldb-current || =azure-sqldw-latest || >
2121

2222
This article discusses deadlocks in the [!INCLUDE [ssdenoversion-md](../includes/ssdenoversion-md.md)] in depth. Deadlocks are caused by competing, concurrent locks in the database, often in multi-step transactions. For more on transaction locking, see [Transaction locking and row versioning guide](sql-server-transaction-locking-and-row-versioning-guide.md).
2323

24-
For more specific information on identification and prevention of deadlocks in Azure SQL Database, see [Analyze and prevent deadlocks in Azure SQL Database](/azure/azure-sql/database/analyze-prevent-deadlocks).
24+
For more specific information on identification and prevention of deadlocks in Azure SQL Database, see [Analyze and prevent deadlocks in Azure SQL Database and Fabric SQL database](/azure/azure-sql/database/analyze-prevent-deadlocks).
2525

2626
<a id="deadlocks"></a>
2727

@@ -133,7 +133,7 @@ To view deadlock information, the [!INCLUDE [ssDEnoversion](../includes/ssdenove
133133
134134
<a id="deadlock_xevent"></a>
135135
136-
### Deadlock extended event
136+
### Deadlock Extended Event
137137
138138
In [!INCLUDE [ssSQL11](../includes/sssql11-md.md)] and later versions, the `xml_deadlock_report` Extended Event (XEvent) should be used instead of the Deadlock graph event class in SQL Trace or SQL Profiler.
139139
@@ -160,7 +160,7 @@ FROM (SELECT CAST ([target_data] AS XML) AS Target_Data
160160
ON xs.address = xt.event_session_address
161161
WHERE xs.name = N'system_health'
162162
AND xt.target_name = N'ring_buffer') AS XML_Data
163-
CROSS APPLY Target_Data.nodes('RingBufferTarget/event[@name="xml_deadlock_report"]') AS XEventData(xdr)
163+
CROSS APPLY Target_Data.nodes('RingBufferTarget/event[@name="xml_deadlock_report"]') AS XEventData(xdr)
164164
ORDER BY [Date] DESC;
165165
```
166166

@@ -235,6 +235,8 @@ END
235235
</event>
236236
```
237237

238+
If you want to capture the plan that caused the deadlock, see [Using xEvents to capture an Actual Execution Plan](https://techcommunity.microsoft.com/blog/sqlserver/using-xevents-to-capture-an-actual-execution-plan/392136).
239+
238240
For more information, see [Use the system_health session](extended-events/use-the-system-health-session.md)
239241

240242
<a id="deadlock_traceflags"></a>
@@ -614,5 +616,5 @@ This scenario of competing `UPDATE` statements results in a deadlock. In this ca
614616
- [Lock:Deadlock Chain Event Class](event-classes/lock-deadlock-chain-event-class.md)
615617
- [Lock:Deadlock Event Class](event-classes/lock-deadlock-event-class.md)
616618
- [SET DEADLOCK_PRIORITY (Transact-SQL)](../t-sql/statements/set-deadlock-priority-transact-sql.md)
617-
- [Analyze and prevent deadlocks in Azure SQL Database](/azure/azure-sql/database/analyze-prevent-deadlocks)
619+
- [Analyze and prevent deadlocks in Azure SQL Database and Fabric SQL database](/azure/azure-sql/database/analyze-prevent-deadlocks)
618620
- [Open, view, and print a deadlock file in SQL Server Management Studio (SSMS)](performance/open-view-and-print-a-deadlock-file-sql-server-management-studio.md)

0 commit comments

Comments
 (0)