Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 library cache lock куда копать?  [new]
Надфиль
Member

Откуда:
Сообщений: 137
oracle 12.2.0.1 RAC 2 node
ни с того ни с сего одна из сессий с таким ожиданием "повесила" весь кластер.
самая ординарная сессия. она подвесила еще пару тысяч точно таких же..

К сообщению приложен файл. Размер - 68Kb
29 май 19, 12:08    [21896558]     Ответить | Цитировать Сообщить модератору
 Re: library cache lock куда копать?  [new]
Надфиль
Member

Откуда:
Сообщений: 137
дополню.
попытался по параметрам идентифицировать объект
select to_char(29188906832,'xxxxxxxxxxxxxx') from dual;

6cbcb5f50

select * from x$kglob where kglhdpar =hextoraw('00000006CBCB5F50');

из "интересного" 
kglobtyp  126 
KGLOBTYD Optimizer Finding

Куда мне пойти дальше пока не придумал :-)
29 май 19, 12:25    [21896584]     Ответить | Цитировать Сообщить модератору
 Re: library cache lock куда копать?  [new]
CrazyCat
Member

Откуда:
Сообщений: 2955
смотри кто ее блокирует и что он делает. обычно это DDL...
29 май 19, 15:13    [21896785]     Ответить | Цитировать Сообщить модератору
 Re: library cache lock куда копать?  [new]
Надфиль
Member

Откуда:
Сообщений: 137
CrazyCat
смотри кто ее блокирует и что он делает. обычно это DDL...

нету там ничего похожего на DDL...
это обычная сессия. коннект. несколько селектов. дисконнект.
по результатам селекта возможны инсерты и апдейты, но в другую базу. на майскуле.
29 май 19, 15:28    [21896825]     Ответить | Цитировать Сообщить модератору
 Re: library cache lock куда копать?  [new]
andrey_anonymous
Member

Откуда: Москва
Сообщений: 17679
Надфиль
коннект. несколько селектов. дисконнект.

Параметры "нескольких селектов" литералами?
Sequences nocache?
Кто-то индексы перестраивает или таблички двигает?
29 май 19, 15:35    [21896851]     Ответить | Цитировать Сообщить модератору
 Re: library cache lock куда копать?  [new]
Надфиль
Member

Откуда:
Сообщений: 137
andrey_anonymous,

1. нет этот программист следует моим рекомендациям "используй переменные, а то ногами забью" :D
2. у меня нет в базе секвенсев которые дергаются часто и не кэшируются.
3. да не. это слишком тривиально. я бы такое заметил. ну и обычно это ведет к невалидности кучи объектов. а тут самая обычная сессия расшалилась. причем у меня сложилось впечатление, что она повесила этот "лок" сразу после коннекта....
29 май 19, 15:43    [21896872]     Ответить | Цитировать Сообщить модератору
 Re: library cache lock куда копать?  [new]
xtender
Member

Откуда: Мск
Сообщений: 5243
Надфиль,

покажите
sho parameter opt%adaptive
sho parameter _optimizer_dsdir_usage_control
29 май 19, 15:53    [21896903]     Ответить | Цитировать Сообщить модератору
 Re: library cache lock куда копать?  [new]
xtender
Member

Откуда: Мск
Сообщений: 5243
Надфиль
KGLOBTYD Optimizer Finding

У Игоря Усольцева уже было: https://iusoltsev.wordpress.com/2018/03/25/tm-library-cache-deadlock-cursor-parsing-optimizer-finding/
29 май 19, 15:54    [21896905]     Ответить | Цитировать Сообщить модератору
 Re: library cache lock куда копать?  [new]
Надфиль
Member

Откуда:
Сообщений: 137
xtender
Надфиль,

покажите
sho parameter opt%adaptive
sho parameter _optimizer_dsdir_usage_control


SQL> sho parameter opt%adaptive

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
optimizer_adaptive_plans             boolean     FALSE
optimizer_adaptive_reporting_only    boolean     FALSE
optimizer_adaptive_statistics        boolean     TRUE
SQL> sho parameter _optimizer_dsdir_usage_control
SQL>
29 май 19, 16:08    [21896945]     Ответить | Цитировать Сообщить модератору
 Re: library cache lock куда копать?  [new]
Надфиль
Member

Откуда:
Сообщений: 137
xtender
У Игоря Усольцева уже было: https://iusoltsev.wordpress.com/2018/03/25/tm-library-cache-deadlock-cursor-parsing-optimizer-finding/

видел уже. увидел там DDl в начале, пропустил. ча еще раз посмотрю.
29 май 19, 16:09    [21896952]     Ответить | Цитировать Сообщить модератору
 Re: library cache lock куда копать?  [new]
andrey_anonymous
Member

Откуда: Москва
Сообщений: 17679
Надфиль
optimizer_adaptive_plans             boolean     FALSE
optimizer_adaptive_reporting_only    boolean     FALSE
optimizer_adaptive_statistics        boolean     TRUE
SQL> sho parameter _optimizer_dsdir_usage_control

Наоборот жеж...
29 май 19, 16:10    [21896956]     Ответить | Цитировать Сообщить модератору
 Re: library cache lock куда копать?  [new]
Надфиль
Member

Откуда:
Сообщений: 137
andrey_anonymous
Надфиль
optimizer_adaptive_plans             boolean     FALSE
optimizer_adaptive_reporting_only    boolean     FALSE
optimizer_adaptive_statistics        boolean     TRUE
SQL> sho parameter _optimizer_dsdir_usage_control

Наоборот жеж...

поясни если не жалко?
29 май 19, 16:12    [21896965]     Ответить | Цитировать Сообщить модератору
 Re: library cache lock куда копать?  [new]
andrey_anonymous
Member

Откуда: Москва
Сообщений: 17679
Надфиль
andrey_anonymous
пропущено...
Наоборот жеж...

поясни если не жалко?

Если по рекомендациям для 12с выставляли, то адаптивные планы - добро, адаптивная статистика - зло.
29 май 19, 16:13    [21896968]     Ответить | Цитировать Сообщить модератору
 Re: library cache lock куда копать?  [new]
Надфиль
Member

Откуда:
Сообщений: 137
andrey_anonymous
Если по рекомендациям для 12с выставляли, то адаптивные планы - добро, адаптивная статистика - зло.

адаптивные планы я отрубил сразу после апгрейда с 11.2 до 12.
запарили "новые, улучшенные" планы выполнения. когда запрос работавший менее одной сотой секунды начинал работать 10000 секунд... это с практической ТЗ приводило к фактическому падению всего хозяйства. ибо когда запрос вызываемые сотни раз в секунду начинает работать на десять порядков медленней....
а до статистики я видимо не дошел. но вряд ли рискну менять такие параметры без веских оснований на работающей базе. полгода уже работает. и пускай работает. хотя описываемый инцидент испортил мне карму).
еще я полностью(надеюсь) отрубил автоматическое "распараллеливание"..
29 май 19, 16:20    [21896976]     Ответить | Цитировать Сообщить модератору
 Re: library cache lock куда копать?  [new]
andrey_anonymous
Member

Откуда: Москва
Сообщений: 17679
Надфиль
andrey_anonymous
Если по рекомендациям для 12с выставляли, то адаптивные планы - добро, адаптивная статистика - зло.

адаптивные планы я отрубил сразу после апгрейда с 11.2 до 12.
запарили "новые, улучшенные" планы выполнения

Так проблема растет из баговой адаптивной статистики, адаптивные планы сами по себе проблем особых не доставляли.
29 май 19, 16:27    [21896993]     Ответить | Цитировать Сообщить модератору
 Re: library cache lock куда копать?  [new]
Надфиль
Member

Откуда:
Сообщений: 137
andrey_anonymous
Так проблема растет из баговой адаптивной статистики, адаптивные планы сами по себе проблем особых не доставляли.

спасибо, попробую таки в одно из окон. отключение статистки может привести к массовым перестроениям планов и т.д?
почитаю что пишут по этому поводу.
29 май 19, 16:33    [21897009]     Ответить | Цитировать Сообщить модератору
 Re: library cache lock куда копать?  [new]
xtender
Member

Откуда: Мск
Сообщений: 5243
Надфиль,

Это вы должны были прочитать ещё при апгрейде на 12.2
29 май 19, 16:49    [21897032]     Ответить | Цитировать Сообщить модератору
 Re: library cache lock куда копать?  [new]
usolcew
Member

Откуда: Россия
Сообщений: 121
поддержу рекомендацию:
OPTIMIZER_ADAPTIVE_STATISTICS => FALSE отключит _OPTIMIZER_DSDIR_USAGE_CONTROL => 0, что исключит влияние SQL Plan Directives+Findings

но проблема всё-таки, возможно не в этом (CrazyCat выше писал, ASH в помощь)
и library cache lock/pin в этом же сценарии "поймать" ещё получится, просто объект Library Cache будет другой, например, Cursor
29 май 19, 16:53    [21897048]     Ответить | Цитировать Сообщить модератору
 Re: library cache lock куда копать?  [new]
Надфиль
Member

Откуда:
Сообщений: 137
xtender
Надфиль,

Это вы должны были прочитать ещё при апгрейде на 12.2

понятно что должен. просто столько всего нужно прочитать при этом.
апгрейд был "эпичным" смена одновременная, железа, ОС, версии БД, ну и как вишенка на торте переход, на кластер.
я прямо таки удивлен, что это получилось работоспособным..
29 май 19, 16:57    [21897061]     Ответить | Цитировать Сообщить модератору
 Re: library cache lock куда копать?  [new]
run09
Member

Откуда:
Сообщений: 42
Надфиль
xtender
Надфиль,

Это вы должны были прочитать ещё при апгрейде на 12.2

понятно что должен. просто столько всего нужно прочитать при этом.
апгрейд был "эпичным" смена одновременная, железа, ОС, версии БД, ну и как вишенка на торте переход, на кластер.
я прямо таки удивлен, что это получилось работоспособным..

При таких эпиках я оставляю optimizer_feature_enable = оригинальной версии на очень-очень долго
30 май 19, 12:51    [21897627]     Ответить | Цитировать Сообщить модератору
 Re: library cache lock куда копать?  [new]
Надфиль
Member

Откуда:
Сообщений: 137
usolcew
поддержу рекомендацию:
OPTIMIZER_ADAPTIVE_STATISTICS => FALSE

передернул вчера, ничего не предвещало.
утром заработало пара участков не активных в выходные. и получил в паре мест ora-13831
утро пнд не тот время когда нужно разбираться с чем то не до конца ясным. откатил назад.
что странно, запросов для которых прибил план через smp много, и совершенно точно большая часть из них работала сутки.
но споткнулось на парочке....
ладно как говорят японцы "хусим", вернусь к этому вопросу когда будет больше времени на реагирование.
3 июн 19, 15:00    [21900574]     Ответить | Цитировать Сообщить модератору
 Re: library cache lock куда копать?  [new]
andrey_anonymous
Member

Откуда: Москва
Сообщений: 17679
Doc ID 2360823.1
3 июн 19, 15:17    [21900599]     Ответить | Цитировать Сообщить модератору
 Re: library cache lock куда копать?  [new]
Надфиль
Member

Откуда:
Сообщений: 137
andrey_anonymous
Doc ID 2360823.1

спасибо, я уже читал, но не вникал. повторю опыт после установки ПСУ.
3 июн 19, 15:27    [21900606]     Ответить | Цитировать Сообщить модератору
 Re: library cache lock куда копать?  [new]
large5
Member

Откуда: Баку
Сообщений: 32
обычно полезнее всего : копаьт в сторону ухода от литералов и переписывания запросов с использованием bind variables .
3 июн 19, 17:20    [21900734]     Ответить | Цитировать Сообщить модератору
 Re: library cache lock куда копать?  [new]
Надфиль
Member

Откуда:
Сообщений: 137
large5
обычно полезнее всего : копаьт в сторону ухода от литералов и переписывания запросов с использованием bind variables .

я уже писал на эту тему. в той части функционала, которая породила проблемную ссесию, используются только переменные.
хотя есть несколько модулей? "авторов" которых мне полностью не удается "переубедить" и они не полностью пока избавились от дурной привычки. ну или им не хватает квалификации, во что я, конечно, поверить не могу :-)
памяти на серверах вагон, врядли закончилось место в шаред пуле..
буду благодарен за "аргументы" в моей дискуссии с программистами за использование и переменных и против использования конструкций when others then вместо тривиального no_data_found...
3 июн 19, 21:31    [21900953]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Oracle Ответить