Цитирую известный документ.
Для поиска блокирующих сессий можно использовать следующий запрос
select p.pid, s.sid, s.serial#,s.process,
s.blocking_session, -- sid блокирующей сессии
s.seconds_in_wait, -- время ожидания в секундах
s.username, s.program, s.module
from v$session s, v$process p
where s.paddr = p.addr
and blocking_session is not null
order by seconds_in_wait
select sid, status, serial#, sql_id, action, event
from v$session where sid = < sid блокирующей сессии >
На основании полученной информации можно рассматривать вопрос о принудительном отсоединении блокирующей сессии.
alter system kill session '< sid блокирующей сессии >, < serial# блокирующей сессии >'
2. Поиск блокирующих сессий для события ожидания «Сursor: pin S wait on X».
SELECT p2raw ,
to_number(substr(to_char(rawtohex(p2raw)), 1, 8), 'XXXXXXXX') sid
FROM v$session
WHERE event = 'cursor: pin S wait on X';
select sid, status, serial#, sql_id, action, event
from v$session where sid = < sid блокирующей сессии >
На основании полученной информации можно рассматривать вопрос о принудительном отсоединении блокирующей сессии
alter system kill session '< sid блокирующей сессии >, < serial# блокирующей сессии >'
Комментариев нет:
Отправить комментарий