Пример взаимоблокировки в Oracle
Взаимная блокировка двух сессий происходит когда сессии натыкаются на блокировку друг друга. Продемонстрировать такое поведение можно на таблице с двумя строками.
drop table test.emp;
create table test.emp
(
  rid  integer not null,
  name varchar2(100)
);
alter table test.emp
  add constraint table_pk primary key (rid);
insert into test.emp (rid, name) values (1, 'запись 1');
insert into test.emp (rid, name) values (2, 'запись 2');
commit;
Следующая последовательность запросов update приводит к взаимной блокировке.
| Сессия 1 | Сессия 2 | 
| update test.emp set name = '11' where rid = 1; | |
| update test.emp set name = '22' where rid = 2; | |
| update test.emp set name = '22' where rid = 2; | |
| Сеанс зависает | |
| update test.emp set name = '11' where rid = 1; | |
| ORA-00060: взаимная блокировка при ожидании ресурса | 
Ошибка ORA-00060, как написано в документации, может появиться в случайной из этих сессий.