|
|
|
ITL waits
|
|||
|---|---|---|---|
|
#18+
что-то голова не варит уже, поэтому спрошу здесь. AWR показывает большое число ожиданий "ITL waits" на сегменты индекса. Подампил крайние справа блоки этого индекса и везде выделено 169 слотов (половина блока). У нас конечно высокая конкуренция, но не более 80 сессий в параллели. Ну край 100. Откуда могут быть ожидания? или я чего-то кардинально не понимаю? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2018, 11:45 |
|
||
|
ITL waits
|
|||
|---|---|---|---|
|
#18+
х.з.Подампил крайние справа блоки этого индекса и везде выделено 169 слотов (половина блока). У нас конечно высокая конкуренция, но не более 80 сессий в параллели. Ну край 100. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2018, 12:05 |
|
||
|
ITL waits
|
|||
|---|---|---|---|
|
#18+
Оракл не обязан проверять каждый слот свободен он или нет , особенно если он еще и помечен как грязносброшенный. Он либо создаст новый если есть место, либо выброчно тыкнется в несколько (или несколько десятков, хз) , если не напорется на свободный, то немножко поспит и начнет заново. Поэтому при интенсивной нагрузке наличие свободных слотов не гарантирует отсутствие ITL waits ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2018, 13:17 |
|
||
|
ITL waits
|
|||
|---|---|---|---|
|
#18+
DВАвыброчно тыкнется в несколько (или несколько десятков, хз) , если не напорется на свободный, то немножко поспит и начнет заново. Поэтому при интенсивной нагрузке наличие свободных слотов не гарантирует отсутствие ITL waits Эээ... Наташ, пруф не затруднит? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2018, 14:30 |
|
||
|
ITL waits
|
|||
|---|---|---|---|
|
#18+
теоретический вопрос: неизбежны ли Deadlock'и? Это с участием Наташи (еще маленькой ) Но где-то был еще топик, где (опять же Ааз, но вроде как с семинара Льюиса) отмечал, что пройдя до конца списка ITL, на последнем процесс засыпает уже без таймаута, а просто навсегда, ждет когда освободится именно этот слот ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2018, 14:48 |
|
||
|
ITL waits
|
|||
|---|---|---|---|
|
#18+
Elic TL Waits – Changes in Recent Releases (c) Christian Antognini О, спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2018, 14:50 |
|
||
|
ITL waits
|
|||
|---|---|---|---|
|
#18+
Вячеслав ЛюбомудровО, спасибоГуглу. ITL waits - первая страница. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2018, 14:58 |
|
||
|
ITL waits
|
|||
|---|---|---|---|
|
#18+
Да оно не сильно интересно, пока это не твоя проблема Типо примерно расклад знаешь, а как оно по разным версиям в частностях -- за всем и не уследишь (пока сам не наступишь) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2018, 15:05 |
|
||
|
ITL waits
|
|||
|---|---|---|---|
|
#18+
Ну и ТС сразу -- перестроить все сегменты индекса (например в ONLINE) есть возможность? Может и поможет... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2018, 15:07 |
|
||
|
ITL waits
|
|||
|---|---|---|---|
|
#18+
ElicВячеслав ЛюбомудровО, спасибоГуглу. ITL waits - первая страница. Вот и я о том... Если только Ната, конечно, не восприняла конструкцию вида "it probes, round-robin, the available slots" как DВАвыброчно тыкнется в несколько что очень далеко от истины, поскольку алгоритм Round-Robin - "Робин, слоняющийся по кругу" - это просто закольцованный полный перебор. Который Oracle дооснастил алгоритмами искусственного снижения конкуренции за сам список ITL при сверх-высокой (нерасчетной) конкуренции за блок. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2018, 15:27 |
|
||
|
ITL waits
|
|||
|---|---|---|---|
|
#18+
Не совсем так -- при куче пользователей для каждого из них выбор является случайным ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2018, 15:37 |
|
||
|
ITL waits
|
|||
|---|---|---|---|
|
#18+
Ната уже давно подзабыла подробности :) так что не буду спорить, тем более что за изменениями в версиях фиг уследишь ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2018, 15:48 |
|
||
|
ITL waits
|
|||
|---|---|---|---|
|
#18+
выборочно тыкнется в несколько - это до засыпания. где-то у меня отложилось что не на первом же занятом заснет а откуда дровишки - уже не вспомню ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2018, 15:54 |
|
||
|
ITL waits
|
|||
|---|---|---|---|
|
#18+
DВАвыборочно тыкнется в несколько - это до засыпания. где-то у меня отложилось что не на первом же занятом заснет а откуда дровишки - уже не вспомню ) Нат, оно ПЕРЕБЕРЕТ ВСЕ слоты ITL в блоке (а не потыкается), не найдя среди них свободного - попробует выделить новый, не сможет - пойдет ПЕРЕБИРАТЬ ITL еще раз, но уже делая паузы (конкретное поведение на этом этапе зависит от версии), в конце концов - встанет в очередь к последнему слоту ITL, на котором сериализуются (отстаиваются) неудачники в ожидании снижения нагрузки. Однако чтобы это случилось - активных транзакций в блок должно одновременно прийти больше, чем можно разместить слотов ITL. А это зависит от наличия свободного места в блоке и числа транзакций. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2018, 16:08 |
|
||
|
ITL waits
|
|||
|---|---|---|---|
|
#18+
Вот тут-то и проявляется задница со 169 (максимум для 8k) слотами Особенно, если гарантировано (см. пост от Elic) никогда не было больше 20 одновременных транзакций Т.е. теория как-то с практикой не очень бьется ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2018, 16:13 |
|
||
|
ITL waits
|
|||
|---|---|---|---|
|
#18+
Вячеслав ЛюбомудровВот тут-то и проявляется задница со 169 (максимум для 8k) слотами Особенно, если гарантировано (см. пост от Elic) никогда не было больше 20 одновременных транзакций Т.е. теория как-то с практикой не очень бьется 1. 169 слотов - это максимум теоретический. Фактический максимум зависит от свободного места. 2. У события есть параметры. Они, если мне не изменяет склероз, позволяют (p2,p3) определить конкретный блок таблицы или индекса, задампить его и посмотреть предметно. 3. Утверждение "никогда не было более 20 одновременно" - суть оценочное суждение, не подкрепленное фактически. Транзакции могли быть долгими, а могли короткие столпиться в блоке индекса и не быть замеченными, к разбору полетов остались только следы "очереди неудачников". Есть шанс, что дамп конкретного блока, на котором случилось ненормально долгое ожидание ITL, может позволить поднять конкретные транзакции, одновременно посетившие блок - если, конечно, снять дамп до того, как проблема саморассосется и новые транзакции перепишут ITL под себя. А логмайнер поможет определить что именно происходило. Это если интересны детали. Если детали не очень интересны - то можно просто перестроить индекс со скорректированными значениями pctfree и initrans. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2018, 17:15 |
|
||
|
ITL waits
|
|||
|---|---|---|---|
|
#18+
andrey_anonymousНат, оно ПЕРЕБЕРЕТ ВСЕ слоты ITL в блоке (а не потыкается), не найдя среди них свободного - попробует выделить новый, не сможет - пойдет ПЕРЕБИРАТЬ ITL еще раз, но уже делая паузы (конкретное поведение на этом этапе зависит от версии), в конце концов - встанет в очередь к последнему слоту ITL, на котором сериализуются (отстаиваются) неудачники в ожидании снижения нагрузки. Однако чтобы это случилось - активных транзакций в блок должно одновременно прийти больше, чем можно разместить слотов ITL. А это зависит от наличия свободного места в блоке и числа транзакций.Простейший тест Код: plsql 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. Код: plsql 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. 30. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2018, 09:42 |
|
||
|
ITL waits
|
|||
|---|---|---|---|
|
#18+
Какие люди почтили вниманием мою ветку! ORACLE 12.1.0.2 Слава, началось все собственно с того, что решили поднять initrans с 25 до 50. В ожидании окна решил подампить блоки, помня про тему Elic-а ожидал там уже увидеть что-то около 60 слотов. А тут максимум. То есть ребилдить все равно. Индекс станет меньше. А с края как я понимаю он в скорости все равно разрастется до 169 слотов. ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.07.2018, 04:18 |
|
||
|
ITL waits
|
|||
|---|---|---|---|
|
#18+
Разрастется только при определенных условиях, а затем будет наследоваться при делении ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.07.2018, 05:37 |
|
||
|
ITL waits
|
|||
|---|---|---|---|
|
#18+
andrey_anonymous можно просто перестроить индекс со скорректированными значениями pctfree думал про вариант: 1. перестраиваю индекс с pctfree 0. 2. меняя pctfree на 99 с учетом того что индекс только по дате (значений все равно в блок набъется дофига) - весьма сомнительная идея. кроме этого индекс придется постоянно ребилдить чтобы не распухал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.07.2018, 06:57 |
|
||
|
ITL waits
|
|||
|---|---|---|---|
|
#18+
х.з.То есть ребилдить все равно. Индекс станет меньше. А с края как я понимаю он в скорости все равно разрастется до 169 слотов. ?reverse не предлагать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.07.2018, 07:46 |
|
||
|
ITL waits
|
|||
|---|---|---|---|
|
#18+
pctfree для индекса действует только на момент по/перестроения ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.07.2018, 07:50 |
|
||
|
ITL waits
|
|||
|---|---|---|---|
|
#18+
Elicreverse не предлагать? боюсь дождать https://docs.oracle.com/en/database/oracle/oracle-database/18/admin/managing-views-sequences-and-synonyms.html#GUID-76663C84-D792-46A3-A25A-03C49DED71AD более реально. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.07.2018, 08:43 |
|
||
|
|

start [/forum/topic.php?fid=52&msg=39673605&tid=1883728]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
139ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
58ms |
get tp. blocked users: |
1ms |
| others: | 216ms |
| total: | 455ms |

| 0 / 0 |
