|
|
|
Зафетчить курсор переданный функцией параллельно с первого раза
|
|||
|---|---|---|---|
|
#18+
Обнаружил, что если фетчить sys_refcursor то почему-то при первом запуске он всегда выполняется не параллельно ( т.е. несмотря на параллельный план, выполняется в один поток ). Со второго раза нормально. В чем может быть дело? Простой скрипт чтобы воспроизвести у себя ( oracle 11.2.0.4 ): Код: 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. 31. 32. 33. 34. 35. 36. 37. 38. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.03.2018, 19:58 |
|
||
|
Зафетчить курсор переданный функцией параллельно с первого раза
|
|||
|---|---|---|---|
|
#18+
Valergrad, Первое же выполнение происходит прараллельно и порождает два чайлда Код: plsql 1. 2. 3. 4. 5. 6. Код: plsql 1. 2. 3. 4. 5. 6. Код: plsql 1. 2. 3. Код: plsql 1. 2. 3. 4. 5. 6. Сэмплы основной сессии трекаются под child 0, а сэмплы слейвов под child 1. Код: plsql 1. 2. 3. Код: plsql 1. 2. 3. 4. 5. 6. Подробнее кто что делал покажет dbms_sqltune.report_sql_monitor. PS. Независимо от параллельности чтение коллекции всегда будет в один поток. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.03.2018, 21:25 |
|
||
|
Зафетчить курсор переданный функцией параллельно с первого раза
|
|||
|---|---|---|---|
|
#18+
dbms_photoshop, вы совершенно правы, спасибо! Т.е. ошибка получается в моем скрипте для анализа - признаюсь, я не ожидал что одно выполнение одного запроса может создать несколько курсоров. Это многое объясняет. Справедливости ради, отметим что TOAD делает ту же самую ошибку и тоже показывает это как-то странно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2018, 21:29 |
|
||
|
Зафетчить курсор переданный функцией параллельно с первого раза
|
|||
|---|---|---|---|
|
#18+
Valergrad, Слишком уж много кривостей у Оракла при работе с коллекциями в параллельных запросах. При этом, бывает совсем не очевидно когда оно очередной раз выстрелит, например, member condition + parallel . Если интересует полноценная параллельная обработка - используйте лучше временные таблицы вместо коллекций. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.03.2018, 16:11 |
|
||
|
|

start [/forum/topic.php?fid=52&msg=39612339&tid=1884307]: |
0ms |
get settings: |
5ms |
get forum list: |
15ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
47ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
| others: | 222ms |
| total: | 353ms |

| 0 / 0 |
