powered by simpleCommunicator - 2.0.52     © 2025 Programmizd 02
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Запрос , возвращающий суммарное число DeadLocks
25 сообщений из 29, страница 1 из 2
Запрос , возвращающий суммарное число DeadLocks
    #39944629
marsha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ребята , кто может поделиться хорошим запросом , который возвращает суммарное число DeadLocks? Необходимо для мониторинга субд oracle
...
Рейтинг: 0 / 0
Запрос , возвращающий суммарное число DeadLocks
    #39944698
oragraf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
marsha,

С дедлоками, как с самоубийцами - чем больше дедлоков - тем меньше дедлоков.
...
Рейтинг: 0 / 0
Запрос , возвращающий суммарное число DeadLocks
    #39944729
tru55
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
marsha
Ребята , кто может поделиться хорошим запросом , который возвращает суммарное число DeadLocks? Необходимо для мониторинга субд oracle

Вообще-то это одна из ошибок, которая падает в alert.log. Вот оттуда и бери.
...
Рейтинг: 0 / 0
Запрос , возвращающий суммарное число DeadLocks
    #39944750
marsha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
tru55,
спасибо, но нужен именно запрос
...
Рейтинг: 0 / 0
Запрос , возвращающий суммарное число DeadLocks
    #39944752
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
marsha
спасибо, но нужен именно запрос
Шашечки или ехать?
Если разработчики - редиски и провоцируют дедлоки, то метрики здесь никак не помогут.
...
Рейтинг: 0 / 0
Запрос , возвращающий суммарное число DeadLocks
    #39944770
Фотография Stax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
marsha,

поищите
недавно была инфа как доступится к логу не имеея доступа к файлу

Исчезает содержимое alert_log

....
stax
...
Рейтинг: 0 / 0
Запрос , возвращающий суммарное число DeadLocks
    #39944771
marsha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Elic,Ехать! Вот просто сразу надо знать, насколько редиски
...
Рейтинг: 0 / 0
Запрос , возвращающий суммарное число DeadLocks
    #39944785
tru55
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
marsha
tru55,
спасибо, но нужен именно запрос

Во-первых, с alert.log можно работать как с external tables.
Во-вторых, разбирать alert.log с поиском ORA-0060 можно сторонними программами
...
Рейтинг: 0 / 0
Запрос , возвращающий суммарное число DeadLocks
    #39944788
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
marsha
Elic,Ехать! Вот просто сразу надо знать, насколько редиски
Про "ехать" написано в alert.log-е. А степень ридисковости - неавтоматизируемая задача.
...
Рейтинг: 0 / 0
Запрос , возвращающий суммарное число DeadLocks
    #39944799
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для оперативного реагирования более подойдет триггер, чем тяжелый и глючный diag_alert.
...
Рейтинг: 0 / 0
Запрос , возвращающий суммарное число DeadLocks
    #39944821
tru55
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
-2-
Для оперативного реагирования более подойдет триггер, чем тяжелый и глючный diag_alert.

Судя по фразе "суммарное число dead locks" нужен анализ за определенный промежуток. Какой-такой триггер?
...
Рейтинг: 0 / 0
Запрос , возвращающий суммарное число DeadLocks
    #39944984
marsha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
tru55, вот и я задавалась эти же вопросом . Все оказалось проще , не совсем корректно передо мной поставили задачу вывести " Количество взаимоблокировок в БД". Оказалось , что нужно сделать запрос к базе , выводящий блокировку с длительностью больше двух минут. Теперь мучаюсь над этим ) Если бы выводились все deadlock за неограниченный период, это да, было бы очень сильно)))
...
Рейтинг: 0 / 0
Запрос , возвращающий суммарное число DeadLocks
    #39944986
marsha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
-2-, спасибо
...
Рейтинг: 0 / 0
Запрос , возвращающий суммарное число DeadLocks
    #39944987
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
marsha
tru55, вот и я задавалась эти же вопросом . Все оказалось проще , не совсем корректно передо мной поставили задачу вывести " Количество взаимоблокировок в БД". Оказалось , что нужно сделать запрос к базе , выводящий блокировку с длительностью больше двух минут. Теперь мучаюсь над этим )
Звучит так, что тебе надо что-то сделать, но ты не в теме. Не боишься, что работодатель тебя здесь вычислит?
...
Рейтинг: 0 / 0
Запрос , возвращающий суммарное число DeadLocks
    #39944990
marsha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Elic,

да так и есть , несложно догадаться. Нет,не боюсь. Он знает .
...
Рейтинг: 0 / 0
Запрос , возвращающий суммарное число DeadLocks
    #39944999
Alexander Anokhin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Возможно подойдёт
Код: plsql
1.
dba_hist_sysstat where stat_name = 'enqueue deadlocks'
...
Рейтинг: 0 / 0
Запрос , возвращающий суммарное число DeadLocks
    #39945005
Alexander Anokhin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Возможно я тему невнимательно прочитал.
marshaЕсли бы выводились все deadlock за неограниченный период, это да, было бы очень сильно)))

enqueue deadlocks за неограниченный период
Код: plsql
1.
v$sysstat where stat_name = 'enqueue deadlocks'



за ограниченный период
Код: plsql
1.
dba_hist_sysstat where stat_name = 'enqueue deadlocks'


Бывает Оракл не детектит даже такие deadlocks.

marshaпередо мной поставили задачу вывести " Количество взаимоблокировок в БД". Оказалось , что нужно сделать запрос к базе , выводящий блокировку с длительностью больше двух минут.
Тут надо уточнить задачу, какую именно блокировку и как "выводить" эту блокировку. Дальше, вероятно, придётся искать в v$active_session_history/dba_hist_active_sess_history, но пока это лишь допущение
...
Рейтинг: 0 / 0
Запрос , возвращающий суммарное число DeadLocks
    #39945011
marsha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Alexander Anokhin запрос должен считать любые блокировки, длящиеся больше двух минут ,а вот как , думайте сами)
...
Рейтинг: 0 / 0
Запрос , возвращающий суммарное число DeadLocks
    #39945034
tru55
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
marsha
Alexander Anokhin запрос должен считать любые блокировки, длящиеся больше двух минут ,а вот как , думайте сами)

Дело в том, что Oracle сам разруливает Dead lock, Но это его внутренняя кухня, на которую пользователь повлиять не может. Поэтому надо объяснить работодателю, что во-первых, нужно отлавливать dead lock как таковые, а во-вторых, не заниматься фигней по поводу оценки длительности dead lock
...
Рейтинг: 0 / 0
Запрос , возвращающий суммарное число DeadLocks
    #39945039
Maxim Demenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
marsha,

Длящиеся - имеется в виду в данный момент?
А в v$session можно смотреть или условиями задачи запрещено ?
Там например есть seconds_in_wait (можно перевести в минуты с помощью деления на 60) и event где бывает проскакивает что то вроде 'enq: TX - row lock contention' ну или другие enq..

Regards

Maxim
...
Рейтинг: 0 / 0
Запрос , возвращающий суммарное число DeadLocks
    #39945048
Maxim Demenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tru55,

Так вроде ж определились что не дедлоки длинные , а блокировки @marsha хоцца ? Ну а если длинные дедлоки всетаки , то есть нота 2530567.1 хде оракловые гуры пишут
Oracle SupportThere is periodic deadlock detection routine runs every 3 seconds to identify the blockers and subsequent cleanup would happen for the dead blockers.
The rate at which oracle perform the blocker checks for deadlock situation is limited by parameter "_pmon_dead_blkrs_scan_rate_secs".
The rate at which oracle perform aliveness checks on the blockers is limited by "_pmon_dead_blkrs_alive_chk_rate_secs".
Both the parameters are set to value 3 (seconds) and hence the wait time will always be in multiples of 3 since every 3 seconds it checks whether the blocker is dead or alive to prioritize the subsequent cleanup by PMON. This is expected and cannot be modified.


PS
Звыняйте за злостное нарушение правил форума ;-(
...
Рейтинг: 0 / 0
Запрос , возвращающий суммарное число DeadLocks
    #39945050
tru55
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Maxim Demenko,
Ай_яй_яй
...
Рейтинг: 0 / 0
Запрос , возвращающий суммарное число DeadLocks
    #39945051
Maxim Demenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Maxim Demenko,

На всякий случай - если задача эволюционирует в : найти и расстрелять пользователей которые заблокировали таблицу и пошли спать - то в resource manager
есть такой directive parameter- MAX_IDLE_BLOCKER_ТЕМЕ

Regards

Maxim
...
Рейтинг: 0 / 0
Запрос , возвращающий суммарное число DeadLocks
    #39945065
Фотография Кобанчег
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tru55
-2-
Для оперативного реагирования более подойдет триггер, чем тяжелый и глючный diag_alert.

Судя по фразе "суммарное число dead locks" нужен анализ за определенный промежуток. Какой-такой триггер?
Триггер для повшения значимости дедлоков! Чтоб больше внимания привлекали.
Код: plsql
1.
alter system set events 'deadlock crash';
...
Рейтинг: 0 / 0
Запрос , возвращающий суммарное число DeadLocks
    #39945114
marsha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Maxim Demenko, ну как в данный момент.Как должно быть(наверное): с определенной периодичностью ( 10 минут , к примеру) к базе должен поступать мой чудо-запрос , который проверяет , появились ли блокировки , которые висят уже 2 минуты и более. Если это условие выполняется , то мы должны получить ответ , что все плохо , если нет , то продолжить счастливо мониторить. На формирование запросов никаких ограничений не накладывалось , v$session ,скорее всего, будет задействовано .
...
Рейтинг: 0 / 0
25 сообщений из 29, страница 1 из 2
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Запрос , возвращающий суммарное число DeadLocks
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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