chao_ping,

Read MetaLink Doc Id 166924.1. It offer some insights into this kind of
"Self Deadlocks". Here is an excerpt.

<QUOTE>
1. Self Deadlocks

It occur when one session tries to get a lock on a resource that he already
has in some way.  Normally, the Oracle engine should detect those situations
and should avoid the signalling of the ORA-04020 to the end-users. When a
self deadlock detection occurs, Oracle generates a trace file in the
user_dump_dest. It is only considered as a bug if  an ORA-04020 is signalled
to the end-user.

</QUOTE>

HTH.

Arup

----- Original Message -----
To: "Multiple recipients of list ORACLE-L" <[EMAIL PROTECTED]>
Sent: Sunday, March 02, 2003 8:13 AM


> hi, friends:
>
> >>>select count(*) into :b0 from USERCONFIRMINFO where USER_ID=:b1
> >>>The following deadlock is not an ORACLE error. It is a
> >>>deadlock due to user error in the design of an application
> >>>or from issuing incorrect ad-hoc SQL. The following
> >>>information may aid in determining the deadlock:
> >>>
> >>>Deadlock graph:
> >>>---------Blocker(s)-------- ---------Waiter(s)---------
> >>>Resource Name process session holds waits process session holds waits
> >>>TX-000e005d-00037cfa 306 484 X 306 484 S
> >>>session 484: DID 0001-0165-00010802 session 484: DID 0001-0165-00010802
> >>>Rows waited on:
> >>>Session 484: no row
>
> Another trace file like:
> >>>*** 2003-03-02 16:50:22.447
> >>>DEADLOCK DETECTED
> >>>Current SQL statement for this session:
> >>>select USER_ID ,USER_EMAIL into :b0,:b1  from USERPRIVATEINFO where
USER_ACCOUNT=:b2
> >>>The following deadlock is not an ORACLE error. It is a
> >>>deadlock due to user error in the design of an application
> >>>or from issuing incorrect ad-hoc SQL. The following
> >>>information may aid in determining the deadlock:
> >>>Deadlock graph:
>
>>                       ---------Blocker(s)--------  ---------Waiter(s)----
-----
> >>>Resource Name          process session holds waits  process session
holds waits
> >>>TX-0012004a-000374f8       293     263     X            306     512
S
> >>>session 263: DID 0001-0165-0004EC65     session 512: DID
0001-0165-0004EC65
> >>>Rows waited on:
> >>>Session 512: no row
>
>
>
> I ever saw message talking about two session deadlock with no rows waited
on, maybe it is because of pctfree/initrans, How about session wait on
itself then?  And how can it happen?
>
>
>
> Regards
> zhu chao
> msn:[EMAIL PROTECTED]
> www.happyit.net
> www.cnoug.org(China Oracle User Group)
>
>
> --
> Please see the official ORACLE-L FAQ: http://www.orafaq.net
> --
> Author: chao_ping
>   INET: [EMAIL PROTECTED]
>
> 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: [EMAIL PROTECTED] (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: Arup Nanda
  INET: [EMAIL PROTECTED]

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: [EMAIL PROTECTED] (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).

Reply via email to