|
посмотреть открытые курсоры
|
|||
---|---|---|---|
#18+
проверяю открытые курсоры таким образом: Код: plaintext 1. 2. 3. 4.
... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2007, 15:38 |
|
посмотреть открытые курсоры
|
|||
---|---|---|---|
#18+
Ixtiander06что-то их оказывается у некоторых процессов больше, чем должно быть.Это Вы как определяете , что должно быть? Ixtiander06Как посмотреть, что это за курсоры (SQL)? v$open_cusor не проходит, там не все фактически открытые, а те которые в кэше сессии. А как тогда?Так свяжите с предыдущим запросом :) ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2007, 16:21 |
|
посмотреть открытые курсоры
|
|||
---|---|---|---|
#18+
в одной сессии одновременно может быть открыт только один курсор. Все остальные кэшированные. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2007, 16:40 |
|
посмотреть открытые курсоры
|
|||
---|---|---|---|
#18+
хрум-хрумв одной сессии одновременно может быть открыт только один курсор. Все остальные кэшированные.RTFM до проподания хруста ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2007, 16:42 |
|
посмотреть открытые курсоры
|
|||
---|---|---|---|
#18+
хрум-хрумв одной сессии одновременно может быть открыт только один курсор. Все остальные кэшированные. Может, и доказательства приведет благородный дон под "серым" ником ? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2007, 16:44 |
|
посмотреть открытые курсоры
|
|||
---|---|---|---|
#18+
Jannny Ixtiander06что-то их оказывается у некоторых процессов больше, чем должно быть.Это Вы как определяете , что должно быть? я знаю логику приложения, знаю что там стоит ограничение, не позволяющее держать открытыми больше 5 курсоров (только не спрашивайте, почему плиз!). Если хочет открыть больше, должен на старый курсор сделать SQLFreeStmt (это не ODBC, но похоже, всё сводится к EXEC SQL close...). Статистики показывают, что открыто 7 курсоров!!! JannnyТак свяжите с предыдущим запросом :) ??? пардон, шутку не понял :-( ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2007, 17:32 |
|
посмотреть открытые курсоры
|
|||
---|---|---|---|
#18+
Ixtiander06v$open_cusor не проходит, там не все фактически открытые, а те которые в кэше сессии . это откуда такая инфа? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2007, 22:07 |
|
посмотреть открытые курсоры
|
|||
---|---|---|---|
#18+
поподробнее Ixtiander06v$open_cusor не проходит, там не все фактически открытые, а те которые в кэше сессии . это откуда такая инфа?" в том числе и те, которые" STFF Кэширование курсоров в PL/SQL RTFM SESSION_CACHED_CURSORS (FAQ) ... |
|||
:
Нравится:
Не нравится:
|
|||
13.11.2007, 08:57 |
|
посмотреть открытые курсоры
|
|||
---|---|---|---|
#18+
Elic" в том числе и те, которые" с уточнением согласен :-). А всё же, назад к моему вопросу бы... ... |
|||
:
Нравится:
Не нравится:
|
|||
13.11.2007, 13:27 |
|
посмотреть открытые курсоры
|
|||
---|---|---|---|
#18+
Ixtiander06А всё же, назад к моему вопросу бы...Может "лишние" - это служебные того приложения. Смотри по тексту курсоров и по трассе. А вообще непонятно, зачем это копательство :) ... |
|||
:
Нравится:
Не нравится:
|
|||
13.11.2007, 13:34 |
|
посмотреть открытые курсоры
|
|||
---|---|---|---|
#18+
Elic Ixtiander06А всё же, назад к моему вопросу бы...Может "лишние" - это служебные того приложения. Смотри по тексту курсоров и по трассе. А вообще непонятно, зачем это копательство :) не из любви к искусству :-) Есть система, которая нормально работает в продуктивном режиме. Её же установили для тестирования на другой машине. И некоторые процессы вылетают с maximum open cursors exceeded. Посмотрел статистики - вроде действительно больше, чем open_cursors. Но система нормально работает в продукции и там у процессов "правильное" количество open cursors! Вот и копаюсь... "Служебные курсоры" - это что-то конкретное имеется в виду или абстрактное предположение? И как посмотреть текст - в этом-то и был мой первый вопрос? Если v$open_cursor не катит? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.11.2007, 15:28 |
|
посмотреть открытые курсоры
|
|||
---|---|---|---|
#18+
Ixtiander06"Служебные курсоры" - это что-то конкретное имеется в виду или абстрактное предположение ? И как посмотреть текст - в этом-то и был мой первый вопрос? Если v$open_cursor не катит?Почему не катит? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.11.2007, 15:37 |
|
посмотреть открытые курсоры
|
|||
---|---|---|---|
#18+
Elic Ixtiander06"Служебные курсоры" - это что-то конкретное имеется в виду или абстрактное предположение ? И как посмотреть текст - в этом-то и был мой первый вопрос? Если v$open_cursor не катит?Почему не катит? ??? Потому что хочу увидеть действительно одновременно открытые, а не те, которые ещё не выкинуты из кэша ... |
|||
:
Нравится:
Не нравится:
|
|||
13.11.2007, 15:57 |
|
посмотреть открытые курсоры
|
|||
---|---|---|---|
#18+
Ixtiander06??? Потому что хочу увидеть действительно одновременно открытые, а не те, которые ещё не выкинуты из кэшаМного - не мало. Ixtiander06 JannnyТак свяжите с предыдущим запросом :) ??? пардон, шутку не понял :-(Это не была шутка. Если записей больше, чем Вам нужно, то выберите только те, что Вам нужны, а их Вы знаете по первому запросу :) ... |
|||
:
Нравится:
Не нравится:
|
|||
13.11.2007, 16:09 |
|
посмотреть открытые курсоры
|
|||
---|---|---|---|
#18+
Ixtiander06Потому что хочу увидеть действительно одновременно открытые, а не те, которые ещё не выкинуты из кэшаЗакэшированные PL/SQL-ем курсоры имеют харатерную схему именования bind-переменных ... |
|||
:
Нравится:
Не нравится:
|
|||
13.11.2007, 16:48 |
|
посмотреть открытые курсоры
|
|||
---|---|---|---|
#18+
Elic Ixtiander06Потому что хочу увидеть действительно одновременно открытые, а не те, которые ещё не выкинуты из кэшаЗакэшированные PL/SQL-ем курсоры имеют харатерную схему именования bind-переменных а если нет bind-переменных в запросе. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.11.2007, 17:16 |
|
посмотреть открытые курсоры
|
|||
---|---|---|---|
#18+
JannnyЭто не была шутка. Если записей больше, чем Вам нужно, то выберите только те, что Вам нужны, а их Вы знаете по первому запросу :) имеется в виду запрос из моего первого постинга? Так он только количество открытых курсоров возвращает :-(. Или я опять чего-то не понял? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.11.2007, 17:55 |
|
посмотреть открытые курсоры
|
|||
---|---|---|---|
#18+
Ixtiander06 JannnyЭто не была шутка. Если записей больше, чем Вам нужно, то выберите только те, что Вам нужны, а их Вы знаете по первому запросу :) имеется в виду запрос из моего первого постинга? Так он только количество открытых курсоров возвращает :-(. Или я опять чего-то не понял? Здравствуйте, Андрей :-) А почему Вы не можете добавить в исходный запрос v$open_cursor ? Вяжете по sid-у сессии и уже потом анализируете тексты курсоров по sql_text для сессий ... ... |
|||
:
Нравится:
Не нравится:
|
|||
13.11.2007, 18:02 |
|
посмотреть открытые курсоры
|
|||
---|---|---|---|
#18+
????!а если нет bind-переменных в запросе.А много ли найдётся таких, за которые не нужно выдёргивать ноги? :) ... |
|||
:
Нравится:
Не нравится:
|
|||
13.11.2007, 19:07 |
|
посмотреть открытые курсоры
|
|||
---|---|---|---|
#18+
dmidek А почему Вы не можете добавить в исходный запрос v$open_cursor ? Вяжете по sid-у сессии и уже потом анализируете тексты курсоров по sql_text для сессий ... можно добавить, а можно - как я делал - просто вытащить и посмотреть с ним в - суть дела не меняется: есть v$sesstat, который показывают число фактически одновременно открытых курсоров, противоречащее тому, что я знаю о логике приложения, но не показывает текст курсоров. И есть v$open_cursor, который показывает SQL курсоров из кэша, про которые я и без него знаю, что такие команды когда-то сессией исполнялись. Вопрос таким образом остаётся... То ли я ломлюсь в открытую дверь, то ли эта тема никого до сих пор не интересовала, что удивительно :-( ... |
|||
:
Нравится:
Не нравится:
|
|||
14.11.2007, 13:36 |
|
посмотреть открытые курсоры
|
|||
---|---|---|---|
#18+
Ixtiander06И есть v$open_cursor, который показывает SQL курсоровскажем так, его часть, но если это Вас устраивает... Ixtiander06И есть v$open_cursor, который показывает SQL курсоров из кэшаА Вы понимаете, что сейчас открытый курсор также входит в понятие "курсоров из кеша"?... Ixtiander06можно добавить, а можно - как я делал - просто вытащить и посмотреть с ним в - суть дела не меняется:Что есть "посмотреть с ним"? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.11.2007, 14:38 |
|
посмотреть открытые курсоры
|
|||
---|---|---|---|
#18+
JannnyА Вы понимаете, что сейчас открытый курсор также входит в понятие "курсоров из кеша"?... да. Это уже 20-й постинг, я наверное очень плохо обьясняю чего хочу. Ещё раз: v$sesstat говорит: в настоящий момент открыто Х курсоров. Я хочу посмотреть их - и только их - тексты. Jannny Ixtiander06можно добавить, а можно - как я делал - просто вытащить и посмотреть с ним в - суть дела не меняется:Что есть "посмотреть с ним"? сорри! Должно было быть так: как я делал - просто вытащить SID и посмотреть с ним в V$OPEN_CURSOR - суть дела не меняется ... |
|||
:
Нравится:
Не нравится:
|
|||
14.11.2007, 15:45 |
|
посмотреть открытые курсоры
|
|||
---|---|---|---|
#18+
Позвольте воскресить из мёртвых сей пост, но я всё уже перерыл и не понимаю. Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production Сессия изредка крашится по ORA-01000: maximum open cursors exceeded Лимит как у тракториста - триста. Кешироваться больше 50ти - не может, если я правильно понимаю session_cached_cursors 50 Код: plsql 1. 2. 3.
Сейчас открыто уже 197 opened cursors current 197 Код: plsql 1. 2. 3. 4. 5.
Как мне посмотреть их SQL-код, опознать их как либо? Я вижу только sql_id закешированных 46 строк, всего одна задублирована Код: plsql 1. 2. 3. 4.
opened cursors current растёт, а закешированные держаться в пределах 50-ти Везде где читал сказано: количество открытых курсоров в v$sesstat, но как понять, какой из них не закрывается (остаётся открытым и накапливается) - не сказано нигде. Заранее спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.11.2020, 15:43 |
|
посмотреть открытые курсоры
|
|||
---|---|---|---|
#18+
CrazyDiamond, Код: plsql 1.
? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.11.2020, 15:49 |
|
посмотреть открытые курсоры
|
|||
---|---|---|---|
#18+
CrazyDiamond opened cursors current растёт, а закешированные держаться в пределах 50-ти Везде где читал сказано: количество открытых курсоров в v$sesstat, но как понять, какой из них не закрывается (остаётся открытым и накапливается) - не сказано нигде. Ты бы помедитировал/почитал что opened cursors и cached cursors это часы и трусы: OPEN_CURSORS sets the maximum number of cursors each session can have open , per session. SESSION_CACHED_CURSORS sets the number of cached closed cursors each session can have. SY. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.11.2020, 17:13 |
|
посмотреть открытые курсоры
|
|||
---|---|---|---|
#18+
oragraf CrazyDiamond, Код: plsql 1.
? А каким образом воспользоваться v$sql, если мне нужны не закрытые курсоры сессии? Код: plsql 1.
Этот запрос мне возвращает null и 00. Других полей для связки с v$sql я не вижу. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.11.2020, 10:31 |
|
посмотреть открытые курсоры
|
|||
---|---|---|---|
#18+
CrazyDiamond, пример курсоров с3 открыт но для него нет parse для с1 было два parse Код: 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. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63.
"переполнение" открытых курсоров часто бывает при рекурсивных вызовах ф-ций/процедур .... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
27.11.2020, 10:44 |
|
|
start [/forum/topic.php?all=1&fid=52&tid=1880659]: |
0ms |
get settings: |
7ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
154ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
55ms |
get tp. blocked users: |
1ms |
others: | 12ms |
total: | 263ms |
0 / 0 |