|
Деградация производительности с latch free: Result Cache: RC Latch
|
|||
---|---|---|---|
#18+
Добрый день. У клиента возникла проблема с падением производительности на базе. Осмотр AWR отчётов показал проблему с событиями latch free и enq: RC - Result Cache: Contention latch free шли с p2=665, что по v$latch говорим нам об Result Cache: RC Latch Код: plaintext 1. 2. 3.
Версия 12.2 Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8.
далее анализ v$result_cache_objects показывает нам наиболее используемые объекты Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29.
Статистика и размер RC Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
Собственно вопрос - мне не до конца понятно из-за чего вылазят эти ожидания latch free и что с ними делать. Насколько я понимаю LATСH_FREE из OTHERS с p2=Result Cache: RC Latch говорит о том, что кэш переполнен. И причина - либо маленький размер RC, либо неправильное использование механизма кэширование запросов, когда кэшируются запросы, результаты которых после выполнения повторно либо не запрашиваются вообще, либо запрашиваются в малом количестве. Но судя по статистике RC видно, что он заполнен лишь наполовину, тогда откуда ожидания? И еще отдельный вопрос - что может вызывать инвалидацию? так как те функции, например "C_PKGPRM"."FGETVALPRM_CACHED" работает с таблицей-справочником, которая практически никогда не меняется, но тем не менее, видно что большая часть значений инвалидировалась. Понимаю, что выключение RC по-большому счёту поможет, но хотелось бы разобраться более детально ... |
|||
:
Нравится:
Не нравится:
|
|||
13.01.2020, 13:59 |
|
Деградация производительности с latch free: Result Cache: RC Latch
|
|||
---|---|---|---|
#18+
feagor, Видно же что инвалидаций вагон. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.01.2020, 18:27 |
|
Деградация производительности с latch free: Result Cache: RC Latch
|
|||
---|---|---|---|
#18+
feagor Код: plaintext 1. 2.
И еще отдельный вопрос - что может вызывать инвалидацию? так как те функции, например "C_PKGPRM"."FGETVALPRM_CACHED" работает с таблицей-справочником, которая практически никогда не меняется, но тем не менее, видно что большая часть значений инвалидировалась. Потом в этой таблице изменили одно поле в одной строке и сделали COMMIT. Что произойдет со значениями в Result Cache? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.01.2020, 01:13 |
|
Деградация производительности с latch free: Result Cache: RC Latch
|
|||
---|---|---|---|
#18+
SQL*Plus Потом в этой таблице изменили одно поле в одной строке и сделали COMMIT. Что произойдет со значениями в Result Cache? понятно что инвалидируются, но таблица -справочник, значения в ней меняются ну пусть будет 10 раз в день(но я еще проверю), а инвалидация идёт постоянно. Могут ли быть какие-то другие причины инвалидации, кроме очевидного изменения данных в источнике ? чем принципиально отличаются ожидания enq: RC - Result Cache: Contention и latch free Result Cache: RC Latch ? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.01.2020, 10:21 |
|
Деградация производительности с latch free: Result Cache: RC Latch
|
|||
---|---|---|---|
#18+
feagor, См. ноту Troubleshooting High 'Latch Free' Waits with Contention on 'Result Cache: RC Latch' (Doc ID 2143739.1) Есть много других нот и багов. Наилучший вариант решения проблемы: Обратитесь в техподдержку My Oracle Support (MOS). ... |
|||
:
Нравится:
Не нравится:
|
|||
14.01.2020, 11:26 |
|
Деградация производительности с latch free: Result Cache: RC Latch
|
|||
---|---|---|---|
#18+
SQL*Plus, Начал смотреть дальше. Сбросил кэш, увеличил со 150 мб до 900 alter system set RESULT_CACHE_MAX_SIZE=900M мониторю Код: plsql 1.
значение Block Count Current постепенно увеличивается, инвалиды по той таблице-справочнику не вылазит как только значение Block Count Current достигает 89600(85мб) начинают лететь события типа latch:free Таким образом всё же похоже, что заканчивается место под RC, но RC упорно пишет, что удаленных результатов из-за нехватки памяти нет.Delete Count Valid = 0 Почему количество результатов ограничено 85мб, хотя я выставляю параметром 900мб? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2020, 15:35 |
|
Деградация производительности с latch free: Result Cache: RC Latch
|
|||
---|---|---|---|
#18+
feagor, feagor Могут ли быть какие-то другие причины инвалидации, кроме очевидного изменения данных в источнике ? 1. select for update из таблицы, от которой зависит с последующим commit; без изменений 2. изменения в таблице на которую есть FK с on delete cascade в случае, если поле FK не проиндексировано. 12930575 Помимо этого встречал проблему с инвалидацией из-за триггера, но давно было и деталей уже не помню. Возможно, Андрей Серапионович Николаев из РДТех еще помнит. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2020, 15:52 |
|
Деградация производительности с latch free: Result Cache: RC Latch
|
|||
---|---|---|---|
#18+
xtender Помимо этого встречал проблему с инвалидацией из-за триггера ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2020, 15:54 |
|
Деградация производительности с latch free: Result Cache: RC Latch
|
|||
---|---|---|---|
#18+
feagor Могут ли быть какие-то другие причины инвалидации, кроме очевидного изменения данных в источнике ? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2020, 17:11 |
|
Деградация производительности с latch free: Result Cache: RC Latch
|
|||
---|---|---|---|
#18+
feagor SQL*Plus, Начал смотреть дальше. Сбросил кэш, увеличил со 150 мб до 900 alter system set RESULT_CACHE_MAX_SIZE=900M мониторю Код: plsql 1.
значение Block Count Current постепенно увеличивается, инвалиды по той таблице-справочнику не вылазит как только значение Block Count Current достигает 89600(85мб) начинают лететь события типа latch:free Таким образом всё же похоже, что заканчивается место под RC, но RC упорно пишет, что удаленных результатов из-за нехватки памяти нет.Delete Count Valid = 0 Почему количество результатов ограничено 85мб, хотя я выставляю параметром 900мб? RESULT_CACHE_MAX_RESULT = ? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2020, 19:55 |
|
Деградация производительности с latch free: Result Cache: RC Latch
|
|||
---|---|---|---|
#18+
SQL*Plus, 5% по дефолту ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2020, 08:58 |
|
Деградация производительности с latch free: Result Cache: RC Latch
|
|||
---|---|---|---|
#18+
feagor SQL*Plus, 5% по дефолту ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2020, 16:03 |
|
|
start [/forum/topic.php?fid=52&msg=39914449&tid=1881659]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
50ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
51ms |
get tp. blocked users: |
1ms |
others: | 15ms |
total: | 160ms |
0 / 0 |