This content has been marked as final. Show 1 reply
Look at your alert.log, search for messages such as this:1 person found this helpful
Search for the .trc file mentioned and opened it, it should have all the info you need.
Wed Jun 16 15:05:58 2010 Global Enqueue Services Deadlock detected. More info in file
Even on the error you posted, you already have some very important information:
In short, you have another job, or a query that runs at the same time as your job which wants to do some DML on rows of that table and at the same time your Job wants to do some DML on another set of rows tha table the query has locked first.
ORA-06512: at "ARADMIN.CMS_CUSTOMER_DETAILS", line 3
a) Query/Job X Locks some rows of ARADMIN.CMS_CUSTOMER_DETAILS.
b) Your job locks some rows of ARADMIN.CMS_CUSTOMER_DETAILS.
c) Your job wants the lock on the rows that X has locked first.
d) X wants the lock on the rows your job has locked first.
So if I have something you want, and you have something I want, we are both "deadlocked" thus LMD comes in and kill one of us to resolve the impass. It's probably killing the X job/query and so that's why your job is still executing successfully.
So you have two options:
1) Identify the X Job/Query -- either stop it or change it's execution time
2) Your job - either stop it or change it's execution time