
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
08.11.2016, 15:11
|
|||
|---|---|---|---|
виснет вызов extproc из сессии WebDB |
|||
|
#18+
Добрый день. По какой-то причине при вызове внешней процедуры в теле процедуры веб странички, происходит залипание (по другому и не скажешь) вызова. Процесс extproc.exe запускается, но дальше ничего не происходит. Статус сеанса пользователя ANONYMOUS - "active", страничка - не загружается. Как будто идет циклический вызов процедуры. Причем по отдельности - и страничка (если убрать вызов extproc) и внешняя процедура (если её вызвать из толстого клиента или Девелопера) отрабатывают нормально. Подскажите, чем их ковырнуть, куда посмотреть. База - Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit , Виндавс 10. На десятом оракле - всё работает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
08.11.2016, 15:19
|
|||
|---|---|---|---|
виснет вызов extproc из сессии WebDB |
|||
|
#18+
Да, добавлю. Это хозяйство только что поставлено, т.е. это не тот случай, когда "всё работало и вдруг сломалось". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
08.11.2016, 17:28
|
|||
|---|---|---|---|
виснет вызов extproc из сессии WebDB |
|||
|
#18+
Ещё, на этой машине, ANONYMOUS запускается через shared сервер, а на рабочей - через выделенный. А поле "Schemaname" в v$session - пусто (на рабочей - "Schemaname"=ANONYMOUS). Чего-то не так сконфигурировал. Но ведь shared - тоже полезный режим, если дело в этом, то это не выход. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.11.2016, 08:55
|
|||
|---|---|---|---|
виснет вызов extproc из сессии WebDB |
|||
|
#18+
Несмотря на отсутствие явной ошибки, сама функция (dll) не запускается. Без разницы, функция с передачей контекста или без. В логах только следы последующего срубания сессии анонимуса. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.11.2016, 09:08
|
|||
|---|---|---|---|
виснет вызов extproc из сессии WebDB |
|||
|
#18+
vava, В позатом году обновляли одну БД любителей extproc до 12c. Налетели на: Bug 18169693 : EXTERNAL PROCEDURE AGENT NOT SPAWNING THROUGH LISTENER CONFIG IN 12.1.0.1 Диагностика присутствовала в $ORACLE_HOME/hs/log Плюс у extproc, наверняка, должны быть отладочные параметры, регулирующие полноту логирования. Типа описанных : How to Enable Oracle SQL*Net Client , Server , Listener , Kerberos and External procedure Tracing from Net Manager (Doc ID 395525.1) в разделе Tracing External Procedures (Extproc), плюс TRACE_LEVEL=ON в extproc.ora в ряде документов встречается, но у меня до этого дело не дошло. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.11.2016, 09:24
|
|||
|---|---|---|---|
виснет вызов extproc из сессии WebDB |
|||
|
#18+
SeaGate, Спасибо за инфу, изучу. Да, и на этой же машине стоит ЕМенеджер 12с в полном комплекте :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.11.2016, 15:17
|
|||
|---|---|---|---|
виснет вызов extproc из сессии WebDB |
|||
|
#18+
Ещё, подскажите, где выставляется режим подключения (шаред/выделенный) у WebDB ? А то в tnsnames выставлено SERVER = DEDICATED, но сессии ANONYMOUS всё равно подключаются как SHARED. Ну и немного в сторону. Правильно ли я думаю: если подключение SHARED, то с реализацией а-ля COMET/websocket (когда сервер должен удерживать подключение и отпускать чтоб передать событие браузеру) будут проблемы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
11.11.2016, 11:39
|
|||
|---|---|---|---|
виснет вызов extproc из сессии WebDB |
|||
|
#18+
Выставил в SPFILE shared_servers = 0, отвалились все подключения тонких клиентов, в т.ч. EManager 12c. Есть ли возможность как-то заставить его забыть про SHARED? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
21.11.2016, 13:21
|
|||
|---|---|---|---|
виснет вызов extproc из сессии WebDB |
|||
|
#18+
Снова добрый день. Соберу всё вместе, вдруг кто сможет помочь : База 12c EE (12.1.0.2.0), 64bit , WIN 10 :) Всё создается под одним пользователем USER1. Есть процедура Код: plsql 1. 2. 3. 4. Отрабатывает успешно, страничка загружается, в браузере отображается. ДАД настраивался подобным образом: Код: plsql 1. 2. 3. 4. 5. 6. 7. Пользователи ANONYMOUS и XDB разблокированы. Есть функция Код: plsql 1. 2. 3. 4. 5. При подключении девелопером как USER1, отрабатывает нормально. Проблема возникает, если выполнить вызов этой функции внутри процедуры, вызываемой через DAD: Код: plsql 1. 2. 3. 4. 5. 6. Проблема выглядит как зависание сессии ANONYMOUS, с ожиданием "virtual circuit wait", подключается как SHARED. На старой машине с 10G (+Apache) всё работало сразу, а все подключения ANONYMOUS'a шли как DEDICATED. Подумалось, что дело в режиме подключения ANONYMOUS'a. В TNS прописал DEDICATED - не помогает. Если в SPFILE поставить shared_servers=0, отваливается любой доступ через веб. Подскажите, возможно в 11g,12с совсем иначе реализован доступ через веб? (Apache / EPG). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
21.11.2016, 16:23
|
|||
|---|---|---|---|
виснет вызов extproc из сессии WebDB |
|||
|
#18+
owa_util.print_cgi_env: Отличающиеся значения показаны двойной строкой (старая машина / новая машина): PLSQL_GATEWAY = WebDb GATEWAY_IVERSION = 3 2 SERVER_SOFTWARE = Oracle Embedded PL/SQL Gateway/10.2.0.1.0 Oracle Embedded PL/SQL Gateway/12.1.0.2.0 GATEWAY_INTERFACE = CGI/1.1 SERVER_PORT = 8080 SERVER_NAME = XDB HTTP Server REQUEST_METHOD = GET PATH_INFO = /test_pack.test2 SCRIPT_NAME = /dd REMOTE_HOST = REMOTE_ADDR = xx.xx.xx.xx SERVER_PROTOCOL = HTTP/1.1 REQUEST_PROTOCOL = tcp HTTP REMOTE_USER = USER1 ORACLE_SSO_USER = HTTP_CONTENT_LENGTH = 0 HTTP_CONTENT_TYPE = HTTP_USER_AGENT = mozilla/4.0 (compatible; msie 7.0; windows nt 10.0; wow64; trident/7.0; touch; .net4.0c; .net4.0e; .net clr 2.0.50727; .net clr 3.0.30729; .net clr 3.5.30729; tablet pc 2.0; infopath.3) HTTP_HOST = myhost:8080 HTTP_ACCEPT = image/gif,image/jpeg,image/pjpeg,application/x-ms-application,application/xaml+xml,application/x-ms-xbap,*/* HTTP_ACCEPT_ENCODING = gzip,deflate HTTP_ACCEPT_LANGUAGE = en-US,en;q=0.7,ru;q=0.3 WEB_AUTHENT_PREFIX = DAD_NAME = dd DOC_ACCESS_PATH = docs DOCUMENT_TABLE = wpg_document PATH_ALIAS = REQUEST_CHARSET = CL8MSWIN1251 REQUEST_IANA_CHARSET = WINDOWS-1251 SCRIPT_PREFIX = ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
22.11.2016, 14:19
|
|||
|---|---|---|---|
виснет вызов extproc из сессии WebDB |
|||
|
#18+
Определённость увеличилась: Т.к. заставить работать XDB в режиме DEDICATED пока не получилось, то наоборот, перевёл обычные подключения в режим SHARED. Теперь, подключаясь через PL/SQL Developer и пытаясь напрямую запустить внешнюю процедуру: Код: plsql 1. получаем тот-же самый зависон сессии. Таким образом, проблема зависит именно от режима SHARED. Неправильно сконфигурирован агент внешних процедур? И что означает в TNS указание "(PRESENTATION = RO)" ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
22.11.2016, 14:26
|
|||
|---|---|---|---|
виснет вызов extproc из сессии WebDB |
|||
|
#18+
Для EXTPROC, "(PRESENTATION = RO)" - видимо единственное значение layer translate. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
22.11.2016, 17:14
|
|||
|---|---|---|---|
|
|||
виснет вызов extproc из сессии WebDB |
|||
|
#18+
vava, shared_servers > 1 ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
22.11.2016, 17:57
|
|||
|---|---|---|---|
|
|||
виснет вызов extproc из сессии WebDB |
|||
|
#18+
Код: plsql 1. docDo not call an external procedure directly. Instead, use the CALL statement to call the PL/SQL subprogram that published the external procedure. See "CALL Statement Syntax". Код: plsql 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
22.11.2016, 18:58
|
|||
|---|---|---|---|
виснет вызов extproc из сессии WebDB |
|||
|
#18+
user1241, спасибо за участие. Да, shared_servers > 1 (=5). Пробовал разные. Если сессия SHARED, то при Код: plsql 1. получаем ORA-28575 (не удается RPC-подключение к агенту внешних процедур...) Если сессия DEDICATED, то работает в любом виде (и явном и через CALL). Сформировались два вопроса - разных, но приводящих к какому-то решению моей проблемы: 1. Как заставить XDB подключаться через DEDICATED? 2. Как выполнить внешнюю процедуру из SHARED-сессии? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
22.11.2016, 21:41
|
|||
|---|---|---|---|
|
|||
виснет вызов extproc из сессии WebDB |
|||
|
#18+
vava, 1. Никак, xml db сделан под архитектуру shared servers 2. Если на 10g оно же выполняется, покажите работающую shared конфигурацию: tnsnames, listener.ora и параметр dispatchers с 10g. И те же самые неработающие конфиги с 11g. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
22.11.2016, 23:10
|
|||
|---|---|---|---|
виснет вызов extproc из сессии WebDB |
|||
|
#18+
User1241, На старой машине (10g), все сессии, включая ANONYMOUS'a от браузера (через что же он работает?), всегда DEDICATED. Вот проблема и не появлялась. Завтра уточню. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
23.11.2016, 14:35
|
|||
|---|---|---|---|
|
|||
виснет вызов extproc из сессии WebDB |
|||
|
#18+
vava, Может показывать DEDICATED, если сессия INACTIVE. см. чтобы статус сессии был ACTIVE (и случай без вызова dblink / внешних процедур). Через что работает см. порты lsnrctl status и порт от браузера. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
24.11.2016, 11:45
|
|||
|---|---|---|---|
виснет вызов extproc из сессии WebDB |
|||
|
#18+
user1241, Да, так и есть - на обеих машинах сессии XDB - SHARED в состоянии ACTIVE. Т.е. с позиции веб-доступа машины одинаковы, всё проявляется и при подключении Девелопером. Я изменил настройки старой машины на SHARED и проверил Девелопером: Код: plsql 1. 2. 3. 4. 5. На новой машине: Код: plsql 1. 2. 3. 4. 5. При подключении по DEDICATED - везде отрабатывает нормально (и быстро). Вот TNS/Listener со старой машины: Код: 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. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. А это с новой: Код: 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. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. Параметр dispatchers одинаков: Код: plaintext Код: plaintext Код: plaintext shared_servers тоже: =5 Изначально, на новой машине EXTPROC был сконфигурирован через Код: plaintext Ситуация свелась к следующей: При подключении Девелопером как DEDICATED - работает везде. При подключении как SHARED, на старой - работает, на новой - ORA-28575. Может есть какие-то новшества в конфигурировании EXTPROC? Например, оказалось, что "EXTPROC_DLLS=ANY" теперь нужно прописывать в некоем дополнительном файлике \dbhome_1\hs\admin\extproc.ora ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
24.11.2016, 18:57
|
|||
|---|---|---|---|
|
|||
виснет вызов extproc из сессии WebDB |
|||
|
#18+
vava, Стоит поместить Код: plsql 1. 2. 3. 4. 5. 6. 7. по разным DESCRIPTION как в работающей конфигурации. + задать в extproc.ora все параметры, как описано в документации. Ну а дальше экспериментировать: - попробовать добавить dispatcher на протокол IPC - попробовать добавить (SERVER=SHARED) в tnsnames - если не получится, настроить multithreaded external procedure agent - смотреть трассировки ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
24.11.2016, 19:39
|
|||
|---|---|---|---|
|
|||
виснет вызов extproc из сессии WebDB |
|||
|
#18+
vava, Можете показать ваш sqlnet.ora ? Regards Maxim ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
24.11.2016, 19:59
|
|||
|---|---|---|---|
|
|||
виснет вызов extproc из сессии WebDB |
|||
|
#18+
Maxim Demenko, Еще есть такая нота Doc ID 2108742.1, там пишут удалить из tnsnames.ora EXTPROC_CONNECTION_DATA, якобы это legacy It is not necessary to configure extproc in either the listener or the tnsnames.ora file in versions 11g and newer. The extproc agent references the ORACLE_HOME/hs/admin/extproc.ora file for the necessary settings. Regards Maxim ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
24.11.2016, 20:06
|
|||
|---|---|---|---|
виснет вызов extproc из сессии WebDB |
|||
|
#18+
Petro123, Проблема вылечилась рестартом экземпляра после добавления настроек PLSExtProc к уже присутствующим CLRExtProc. Упорно не хотел применять настройки, один рестарт листенера не помогал. Проблески (ещё до рестарта) появились после Код: plaintext Код: plaintext Maxim Demenko, Код: 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. Спасибо за помощь, всё вылечилось. Похоже, по сравнению с Десяткой накрутили PLSExtProc / CLRExtProc , а я от прогресса отстал, надо поизучать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=52&mobile=1&tid=1886955]: |
0ms |
get settings: |
5ms |
get forum list: |
8ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
217ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
30ms |
get tp. blocked users: |
1ms |
| others: | 222ms |
| total: | 495ms |

| 0 / 0 |
