Hi,
Multiple instances of my application runs on the same table. Each
of the instance operates on distinct sets of rows on the same table.
But even then after a few thousand records, the update statement on a
particular table comes out with ORA-00060 Deadlock detected. The
update is based on rowid. And none of the instances (of my
application) operate on the same row.
The trace files have reported the following:
- 2002-09-03 01:45:07.427
- SESSION ID:(13.525) 2002-09-03 01:45:07.391
DEADLOCK DETECTED
Current SQL statement for this session:
update CUST_BILLPARAMS set
last_billed_date=to_date(:b0,'DD/MM/YYYY'),next_invc
_dt=to_date(:b1,'DD/MM/YYYY') where rowid=chartorowid(: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-00040002-000019b9 12 13 X 11 7
S
TX-00020045-0000199a 11 7 X 12 13
S
session 13: DID 0001-000C-00000002 session 7: DID
0001-000B-00000002
session 7: DID 0001-000B-00000002 session 13: DID
0001-000C-00000002
Rows waited on:
Session 7: no row
Session 13: no row
PROCESS STATE
Process global information:
process: 800b5144, call: 8012d420, xact: 802caa24, curses:
800d9ef0, usrses
: 800d9ef0
SO: 800b5144, type: 1, owner: 0, pt: 0, flag: INIT/-/-/0x00
(process) Oracle pid=12, calls cur/top: 8012d420/8012d420, flag: (0)
-
int error: 0, call error: 0, sess error: 0, txn error 0
(post info) last post received: 85 0 4
last post received-location: kslpsr
last process to post me: 800b3864 1 2
last post sent: 0 0 13
last post sent-location: ksasnd
last process posted by me: 800b3864 1 2
(latch info) wait_event=0 bits=10
holding 8000416c Parent+children enqueue hash chains level=4
Location from where latch is held: ksqcmi: kslgpl:
Context saved from call: 0
state=busy
Can anyone help in finding out what the problem is ? I've tried to
change the INITRANS to 4 on the affected table (cust_billparams) and
have increased the pctfree too. Everytime the application comes out
after processing 50K - 100K records.
Thanks in advance.
Arun
Received on Fri May 03 2002 - 02:57:47 CDT