Knowledge Base
Document information
| Document ID: | 773 |
|---|
| Subject: | What is a deadlock and how does oracle handle it? |
|---|
| Creation date: | 7/29/09 3:02 PM |
|---|
| Last modified on: | 7/29/09 3:02 PM |
|---|
Details
A deadlock is a condition where two or more users are waiting for
data locked by each other. Oracle automatically detects a deadlock and
resolves them by rolling back one of the statements involved in the
deadlock, thus releasing one set of data locked by that statement.
Statement rolled back is usually the one which detects the deadlock.
Deadlocks are mostly caused by explicit locking because oracle
does not do lock escalation and does not use read locks. Multitable
deadlocks can be avoided by locking the tables in same order in all the
applications, thus precluding a deadlock.
Add a comment to this document
Do you have a helpful tip related to this document that you'd like to share
with other users? Please add it below. Your name and tip will appear at the
end of the document text.