So How Do I Get To The Execution Plans?
So when I look at a deadlock graph, I can see there are sql_handles. Given that, I can grab the plan_handle and then the query plan from the cache, but I’m going to need to collect it automatically at the time the deadlock is generated. So I’m going to need
-
XML shredding skills
-
Ability to navigate DMVs to get at the cached query plans
-
A way to programatically respond to deadlock graph events (like an XE handler or a trigger)
If you don’t have the funding to get a third-party tool in place which collects this information, this could be a good fit.