|
|
|
Можно ли ограничить время ожидания Library Cache Lock
|
|||
|---|---|---|---|
|
#18+
У меня время-от времени происходит полный клин системы из-за того, что все процессы начинают безлимитно ждать "Library Cache Lock". Это происходит тогда, когда по какой-либо причине становится невалидным пакет, из-за этого становятся невалидными все зависящие от него модули и далее по цепочке (дереву) ... короче достаточно много модулей/пакетов/view становится невалидными. И это все при работающей системе. Допустим в некотором процессе 1 в данный момент выполняется метод пакета А. Пакет А стал невалидным, но процесс 1 продолжает спокойно себе работать. При этом любой другой процесс 2 начал выполнение метода пакета Б и ему понадобилася один из методов пакета А. Такой процесс 2 тут же впадает в состояние ожидания Library Cache Lock, пока не закончится в процессе 1 выполнение метода пакета А. Все было бы ничего, но тут процессу 1 понадобился метод пакета Б и он также впадает в состояние ожидания Library Cache Lock. ВСЕ. Приехали. Система парализована. Oracle не обнаруживает DeadLock. Убиение процесса 1, или 2, или обоих ничего не дает, включая параметр IMMEDIATE. Они продолжают ждать в состоянии KILL. По мне так было бы лучше после некоторого ожидания уйти в аут, нежели висеть бесконечно... Вопрос: можно ли ограничить время ожидания? Сейчас мне приходится класть базу Shutdown Abort и вновь ее поднимать. Вопрос: можно ли как-то разрулить ситуацию без Sutdown ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2003, 16:44:14 |
|
||
|
Можно ли ограничить время ожидания Library Cache Lock
|
|||
|---|---|---|---|
|
#18+
"класть базу Shutdown Abort " А что, shutdown immediate не срабатывает? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2003, 16:58:36 |
|
||
|
Можно ли ограничить время ожидания Library Cache Lock
|
|||
|---|---|---|---|
|
#18+
В это случае не срабатывает, ибо ждет завершения транзакций, а они не завершаются... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2003, 17:03:40 |
|
||
|
Можно ли ограничить время ожидания Library Cache Lock
|
|||
|---|---|---|---|
|
#18+
shutdown immediate - не ждёт завершения транзакций, он делает откат всех транзакий и отключает пользователей. Потом неявно переводит базу как shutdown normal; А для завершения транзакций используется: shutdown transactional; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2003, 17:10:51 |
|
||
|
Можно ли ограничить время ожидания Library Cache Lock
|
|||
|---|---|---|---|
|
#18+
>Вопрос: можно ли ограничить время ожидания? Думаю, что штатными способами нельзя. Другое дело, что проще (и надежнее) не допускать такой ситуации. Согласитесь, что это не нормально удалять один из компонентов пакета, когда зависящие от него компоненты еще работают. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2003, 17:19:41 |
|
||
|
Можно ли ограничить время ожидания Library Cache Lock
|
|||
|---|---|---|---|
|
#18+
Теоретически можно уменьшить количество зависимостей между пакетами, оформив вызовы методов другого пакета через execute immediate. ИМХО к подобному следует прибегать после проработки остальных вариантов, вплоть до перераспределения методов по пакетам. Да и изменение пакетов на рабочей базе, особенно в моменты большой ее нагрузки, не должно быть штатной операцией. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2003, 17:41:18 |
|
||
|
Можно ли ограничить время ожидания Library Cache Lock
|
|||
|---|---|---|---|
|
#18+
>Допустим в некотором процессе 1 в данный момент выполняется метод пакета А. Пакет А стал невалидным, Почему пакет А стал невалидным? Все остальное - это не проблема, а ее следствие ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2003, 23:12:59 |
|
||
|
Можно ли ограничить время ожидания Library Cache Lock
|
|||
|---|---|---|---|
|
#18+
А "стандартный" отстрел через `kill -9` (orakill) теневых процессов не пробовали? Обычно помогает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2003, 01:24:39 |
|
||
|
Можно ли ограничить время ожидания Library Cache Lock
|
|||
|---|---|---|---|
|
#18+
>А "стандартный" отстрел через `kill -9` (orakill) теневых процессов не >пробовали? Обычно помогает. и чем это от уже упомянутого shutdown abort отличается? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2003, 02:30:27 |
|
||
|
Можно ли ограничить время ожидания Library Cache Lock
|
|||
|---|---|---|---|
|
#18+
to Denis Popov Самые "жуткие" зависимости я так и избежал, но остались те, которые появляются в автоматически сгенерированном коде (генерация некоторого набора "стандартных" методов доступа к записям таблиц по мета-базе). Отсюда же вытекает ограничение в свободной компоновке методов по пакетам. В принципе эта ситуация и не является штатной, иногда возникает необходимость что-то изменить/добавить в некие пакеты основных механизмов (фиксации Истории, системы внутренних сообщений, Check Integrity и т.п.). Я бы мог вообще не сталкиваться с этой ситуацией, если бы мог как-нибудь временно запрещать прием и обработку запросов от клиентов без убиения сессий, плюс запрет на запуск Job и гарантированного завершение текущих Job. То есть, если обеспечить, чтобы в системе был активен только один процесс, который как раз и делает невалидным некий пакет А, то никаких проблем не будет. Но надежного способа для обеспечения этого я не знаю. Сейчас у меня используется для этого специальная процедура, которая регулярно вызывается клиентом и в теле всех Job. Если доступ "запрещен", то она выдает специальный Exception, получив который, Клиент переходит в режим ожидания разрешения на работу, а Job просто заканчивает свою работу. Но это не дает 100% надежность. Вот бы задействовать механизмы самого Oracle... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2003, 09:41:04 |
|
||
|
Можно ли ограничить время ожидания Library Cache Lock
|
|||
|---|---|---|---|
|
#18+
2 .dba: Хотя бы тем, что после shutdown abort нужно подымать инстанц, а после kill -9 в живых остаются по крайней мере "невиновные" сессии. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2003, 18:27:24 |
|
||
|
Можно ли ограничить время ожидания Library Cache Lock
|
|||
|---|---|---|---|
|
#18+
У Вас не техническая проблема, а организационная. Соответственно и решать ее надо не техническими методами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2003, 18:31:44 |
|
||
|
Можно ли ограничить время ожидания Library Cache Lock
|
|||
|---|---|---|---|
|
#18+
>2 .dba: Хотя бы тем, что после shutdown abort нужно подымать инстанц, а >после kill -9 в живых остаются по крайней мере "невиновные" сессии. 2vskv >А "стандартный" отстрел через `kill -9` (orakill) теневых процессов не >пробовали? Обычно помогает. Что тогда означает слово "теневых"? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2003, 19:27:49 |
|
||
|
Можно ли ограничить время ожидания Library Cache Lock
|
|||
|---|---|---|---|
|
#18+
2 .dba: Sorry, привычка -- имелся ввиду термин shadow process. В Concepts до сих пор ( 9.2, только что проверил ) есть ремарка, что так иногда называют dedicated server process . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2003, 23:05:49 |
|
||
|
Можно ли ограничить время ожидания Library Cache Lock
|
|||
|---|---|---|---|
|
#18+
>2 .dba: Sorry, привычка -- имелся ввиду термин shadow process. В Concepts >до сих пор (9.2, только что проверил ) есть ремарка, что так иногда >называют dedicated server process. понятно :-) а то я чего-то в сторону фоновых (background) подумал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.06.2003, 13:28:21 |
|
||
|
Можно ли ограничить время ожидания Library Cache Lock
|
|||
|---|---|---|---|
|
#18+
немного не по теме vskv>А "стандартный" отстрел через `kill -9` (orakill) теневых процессов не пробовали? Обычно помогает. .dba>и чем это от уже упомянутого shutdown abort отличается? вариант vskv работает даже когда уже не можешь приконнектиться, но я бы его назвал "нестандартным" отстрелом (с поправкой теневые=background) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.06.2003, 19:43:14 |
|
||
|
Можно ли ограничить время ожидания Library Cache Lock
|
|||
|---|---|---|---|
|
#18+
2Lazy: Из фоновых, IMHO, "отстрел" единственно имеет смысл для *snp*, т.е. для джобов. Правда, это действительно несколько необычно, но всё же иногда имеет место быть :(. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.06.2003, 01:34:32 |
|
||
|
Можно ли ограничить время ожидания Library Cache Lock
|
|||
|---|---|---|---|
|
#18+
Ochen Aktualnaja Problema!!! o nas dlya takogo sluchaja begajet cron job kotoryj po priznaku: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. lupit s kill -9 vseh LCP-Holderov. Ochen pomogajet!!!. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.06.2003, 16:57:10 |
|
||
|
|

start [/forum/topic.php?fid=52&gotonew=1&tid=1990075]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
198ms |
get topic data: |
10ms |
get first new msg: |
5ms |
get forum data: |
2ms |
get page messages: |
53ms |
get tp. blocked users: |
2ms |
| others: | 199ms |
| total: | 497ms |

| 0 / 0 |
