Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Mailing Lists -> Oracle-L -> Re: ITL Deadlock Example?

Re: ITL Deadlock Example?

From: Jonathan Lewis <jonathan_at_jlcomp.demon.co.uk>
Date: Wed, 22 May 2002 10:35:12 -0800
Message-ID: <F001.004680D9.20020522103512@fatcity.com>

Something has gone wrong with your test, you've produced a normal data deadlock. The ITL deadlock graph you should see from my description would have two lines with the cross-over on an X lock and an S lock on each line.

But the deadlock graph you are trying to pin down does look very odd - as you say it does look like a self-deadlock.

Because of the usual mess-up from email, I can't tell if your session is holding an exclusive and waiting for a share, or holding a share and waiting for an exclusive, though.

There are seven different reasons for TX/4 lock waits (hence deadlocks) that I've found so far - but I don't think I've seen one quite like this. Are you using any of:
  distributed transaction
  partitioned tables
  parallel DML
  Autonomous transactions

Jonathan Lewis
http://www.jlcomp.demon.co.uk

Author of:
Practical Oracle 8i: Building Efficient Databases

Next Seminar - Australia - July/August
http://www.jlcomp.demon.co.uk/seminar.html

Host to The Co-Operative Oracle Users' FAQ http://www.jlcomp.demon.co.uk/faq/ind_faq.html

-----Original Message-----
To: Multiple recipients of list ORACLE-L <ORACLE-L_at_fatcity.com> Date: 22 May 2002 16:15

|Thanks for the replies (K,Jonathan,Anjo). I'm getting
|deadlocks to occur but they're not producing the
|deadlock graphs I was expecting to see.
|
|I'm looking to reproduce the scenario that will
|generate the following kind of deadlock graph--where
|it looks like a self-deadlock:
|
| ---------Blocker(s)-------- ---
|------Waiter(s)---------
|Resource Name process session holds waits
|process session holds waits
|TX-00050032-00002143 22 23
|X 22 23 S
|session 23: DID 0001-0016-000017E7 session 23:
|DID 0001-0016-000017E7
|Rows waited on:
|Session 23: no row
|
|But, the deadlock graph that my testing is generating
|looks like:
| ---------Blocker(s)-------- ----
|-----Waiter(s)---------
|Resource Name process session holds waits
|process session holds waits
|TX-00030052-00001fb9 11 11
|X 12 15 X
|TX-00040058-000023ef 12 15
|X 11 11 X
|session 11: DID 0001-000B-00000002 session 15: DID
|0001-000C-00000002
|session 15: DID 0001-000C-00000002 session 11: DID
|0001-000B-00000002
|Rows waited on:
|Session 15: obj - rowid = 0000153E - AAABU+AAFAAAALIAAA
|Session 11: obj - rowid = 0000153E - AAABU+AAFAAAAACAAA
|
|
|It is my understanding that the deadlock graph I am
|trying to reproduce is caused by ITL shortage
|deadlocks. I have verified, via
|dbms_rowid.rowid_block_number(), that I am updating
|rows in different blocks.
|
|Thanks again.
|-w
|

-- 
Please see the official ORACLE-L FAQ: http://www.orafaq.com
-- 
Author: Jonathan Lewis
  INET: jonathan_at_jlcomp.demon.co.uk

Fat City Network Services    -- (858) 538-5051  FAX: (858) 538-5051
San Diego, California        -- Public Internet access / Mailing Lists
--------------------------------------------------------------------
To REMOVE yourself from this mailing list, send an E-Mail message
to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in
the message BODY, include a line containing: UNSUB ORACLE-L
(or the name of mailing list you want to be removed from).  You may
also send the HELP command for other information (like subscribing).
Received on Wed May 22 2002 - 13:35:12 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US