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: deadlock graph -- obj identification

Re: deadlock graph -- obj identification

From: Jared Still <jkstill_at_cybcon.com>
Date: Sat, 19 Apr 2003 18:26:39 -0800
Message-ID: <F001.005857A1.20030419182639@fatcity.com>

> First we are preplxed as to why a deadlock is happenning as the two
> update stmt are referring two different rows.

First off, what is the error message?

ORA-60 is an application error 99% of the time. ORA-4020 could be an Oracle bug.

Please reread the MetaLink articles carefully. It your statements are referring to 2 different rows, and you are getting ORA-60, it would seem that your SQL statements each want each others row locks. This causes a deadlock, and one of the SQL statements will be forced to rollback.

Again, it's explained pretty clearly in those articles: I can't improve on it here.

One of them also explains how to find the objects, though I'm not sure which number you're referring to. If it's the TX number, that's the lock ID. That won't resolve to anything in the data dictionary.

There are several other notes referenced in those two I mentioned previously, you might want to look at those.

What is likely happening is you have two different sections of code that are performing updates on the same tables, but are not doing so in the same order. This causes deadlocks.

It's explained in the MetaLink docs, and in the application developers guide.

Jared

On Saturday 19 April 2003 14:41, sat0789_at_fastmail.fm wrote:
> Hello Jared,
> Thanks for the info..i did take a look at the metalink article that you
> have put forth.
> and we have also identified the sql stmt that is present in the trace
> file.
> First we are preplxed as to why a deadlock is happenning as the two
> update stmt are referring two different rows.
> I am also trying to figure out the object as specified in the trace file.
> The metalink article does not
> specify how to convert the hex value to a decimal to get the object id.
> In Ask tom's site he says to do to_number and get the object id and then
> select from dba_objects to
> get the object name..when i do that dba_objects does not return any
> values...that is what i am confused about...
> Am i doing the right thing in trying to figure out the object id value
> ???
>
> Sathish
>
> On Fri, 18 Apr 2003 16:51:41 -0800, Jared.Still_at_radisys.com said:
> > Please see MetaLink notes 131885.1 and 62365.1 .
> >
> > FYI, the SQL that caused the deadlock is included in the trace file.
> >
> > Jared
> >
> >
> >
> >
> >
> > sat0789_at_fastmail.fm
> > Sent by: root_at_fatcity.com
> > 04/18/2003 05:21 PM
> > Please respond to ORACLE-L
> >
> >
> > To: Multiple recipients of list ORACLE-L
> > <ORACLE-L_at_fatcity.com>
> > cc:
> > Subject: deadlock graph -- obj identification
> >
> >
> > Hello all,
> > We are having a deadlock situation and i am trying to locate the object
> > id
> > the query that i run is
> > select to_number('00020032','xxxxxx') from dual
> > and the value that i get, i look into dba_objects where object_id is the
> > one returned from the first query.
> >
> > When i do that i get no rows returned from dba_objects.
> > Am i doing something wrong...???
> >
> > Deadlock graph:
> > ---------Blocker(s)--------
> > ---------Waiter(s)---------
> > Resource Name process session holds waits process session holds
> > waits
> > TX-00020032-0000024d 8 12 X 29 22
> > S
> > TX-00130039-00001996 29 22 X 8 12
> > S
> > session 12: DID 0001-0008-00000002 session 22: DID
> > 0001-001D-00000002
> > session 22: DID 0001-001D-00000002 session 12: DID
> > 0001-0008-00000002
> >
> >
> > Thanks,
> >
> > --
> > http://www.fastmail.fm - The professional email service
> > --
> > Please see the official ORACLE-L FAQ: http://www.orafaq.net
> > --
> > Author:
> > INET: sat0789_at_fastmail.fm
> >
> > Fat City Network Services -- 858-538-5051 http://www.fatcity.com
> > San Diego, California -- Mailing list and web hosting services
> > ---------------------------------------------------------------------
> > 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).
> >
> >
> >
> >
> > --
> > Please see the official ORACLE-L FAQ: http://www.orafaq.net
> > --
> > Author:
> > INET: Jared.Still_at_radisys.com
> >
> > Fat City Network Services -- 858-538-5051 http://www.fatcity.com
> > San Diego, California -- Mailing list and web hosting services
> > ---------------------------------------------------------------------
> > 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).

-- 
Please see the official ORACLE-L FAQ: http://www.orafaq.net
-- 
Author: Jared Still
  INET: jkstill_at_cybcon.com

Fat City Network Services    -- 858-538-5051 http://www.fatcity.com
San Diego, California        -- Mailing list and web hosting services
---------------------------------------------------------------------
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 Sat Apr 19 2003 - 21:26:39 CDT

Original text of this message

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