RE: Interpretting a deadlock trace file

  • From: "Bobak, Mark" <Mark.Bobak@xxxxxxxxxxxxxxx>
  • To: <oracle-l@xxxxxxxxxxxxx>
  • Date: Fri, 27 Aug 2004 16:59:34 -0400

Peter,

That's a good start, but there are few other clues to look for in the =
trace file.

1.)  What statement caught the deadlock?  This info will be in the trace =
file.
2.)  Are you on 9i?  If so, the SQL of all the other statements involved =
in the deadlock will also be in the trace file.
3.)  Look for a section called "Rows waited on:"  This will give you the =
object id, file#,block#,slot# of the row(s) involved in the deadlock.

Hope that helps,

-Mark

-----Original Message-----
From: oracle-l-bounce@xxxxxxxxxxxxx
[mailto:oracle-l-bounce@xxxxxxxxxxxxx]On Behalf Of Schauss, Peter
Sent: Friday, August 27, 2004 3:07 PM
To: Oracle-L (E-mail)
Subject: Interpretting a deadlock trace file


I returned from vacation to find a trace file,=20
the result of a deadlock detected in one of our applictions,
in my udump directory.

It contained the text of one of the offending SQL statements,
followed by what it called a "Deadlock graph"

Deadlock graph:
                       ---------Blocker(s)--------  =
---------Waiter(s)---------
Resource Name          process session holds waits  process session =
holds waits
TX-0003002a-0000a0c8        23      70     X             17     119      =
     X
TX-00020028-0000a1b5        17     119     X             23      70      =
     X
session 70: DID 0001-0017-00000002      session 119: DID =
0001-0011-00000002
session 119: DID 0001-0011-00000002     session 70: DID =
0001-0017-00000002

Looking at this it seems that session 70 was holding a resource =
identified
by TX-0003002a-0000a0c8 and waiting on TX-00020028-0000a1b5 and that
session 119 was doing the oposite.  How do I translate these values to
actual database objects (i.e. table names, indexes, ...)?

Thanks,
Peter Schauss
----------------------------------------------------------------
Please see the official ORACLE-L FAQ: http://www.orafaq.com
----------------------------------------------------------------
To unsubscribe send email to:  oracle-l-request@xxxxxxxxxxxxx
put 'unsubscribe' in the subject line.
--
Archives are at //www.freelists.org/archives/oracle-l/
FAQ is at //www.freelists.org/help/fom-serve/cache/1.html
-----------------------------------------------------------------
----------------------------------------------------------------
Please see the official ORACLE-L FAQ: http://www.orafaq.com
----------------------------------------------------------------
To unsubscribe send email to:  oracle-l-request@xxxxxxxxxxxxx
put 'unsubscribe' in the subject line.
--
Archives are at //www.freelists.org/archives/oracle-l/
FAQ is at //www.freelists.org/help/fom-serve/cache/1.html
-----------------------------------------------------------------

Other related posts: