powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Выборка из v$lock... выполняется неожиданно долго
3 сообщений из 3, страница 1 из 1
Выборка из v$lock... выполняется неожиданно долго
    #39544971
Здравствуйте,

Как всегда, внезапно, столкнулся с

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
 1* select count(*) from v$lock a
SQL> /

  COUNT(*)
----------
       193

Затрач.время: 00:00:00.09
SQL> select count(*) from v$lock a, v$lock b  where a.id1=b.id1 and a.id2=b.id2 and a.type=b.type and a.block>0 and b.request>0 and a.ctime>60;

  COUNT(*)
----------
         2

Затрач.время: 00:40:40.49



Что не так [может быть] со вторым запросом?
...
Рейтинг: 0 / 0
Выборка из v$lock... выполняется неожиданно долго
    #39545278
Фотография Sayan Malakshinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Мастер Ломастер,

v$lock - тяжелая вьюха и туда лучше обращаться как можно реже:
http://orasql.org/2012/06/30/a-lot-of-latch-free-dml-allocation-latch-in-concurrent-queries-to-vlock/
...
Рейтинг: 0 / 0
Выборка из v$lock... выполняется неожиданно долго
    #39545282
Фотография Sayan Malakshinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Мастер Ломастер,

можешь просто "материализовать":
Код: plsql
1.
2.
3.
with l as (select * from v$lock where rownum>0)
select count(*) from l a, l b 
where a.id1=b.id1 and a.id2=b.id2 and a.type=b.type and a.block>0 and b.request>0 and a.ctime>60;
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Выборка из v$lock... выполняется неожиданно долго
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]